1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-17 17:02:08 +03:00

Create a FETCH_COUNT parameter that causes psql to execute SELECT-like

queries via a cursor, fetching a limited number of rows at a time and
therefore not risking exhausting memory.  A disadvantage of the scheme
is that 'aligned' output mode will align each group of rows independently
leading to odd-looking output, but all the other output formats work
reasonably well.  Chris Mair, with some additional hacking by moi.
This commit is contained in:
Tom Lane
2006-08-29 22:25:08 +00:00
parent 7c5ac5ce22
commit c2f60711d2
6 changed files with 878 additions and 503 deletions

View File

@ -1,5 +1,5 @@
<!--
$PostgreSQL: pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.166 2006/07/27 19:52:04 tgl Exp $
$PostgreSQL: pgsql/doc/src/sgml/ref/psql-ref.sgml,v 1.167 2006/08/29 22:25:04 tgl Exp $
PostgreSQL documentation
-->
@ -2007,6 +2007,33 @@ bar
</listitem>
</varlistentry>
<varlistentry>
<term><varname>FETCH_COUNT</varname></term>
<listitem>
<para>
If this variable is set to an integer value &gt; 0,
the results of <command>SELECT</command> queries are fetched
and displayed in groups of that many rows, rather than the
default behavior of collecting the entire result set before
display. Therefore only a
limited amount of memory is used, regardless of the size of
the result set. Settings of 100 to 1000 are commonly used
when enabling this feature.
Keep in mind that when using this feature, a query may
fail after having already displayed some rows.
</para>
<tip>
<para>
Although you can use any output format with this feature,
the default <literal>aligned</> format tends to look bad
because each group of <varname>FETCH_COUNT</varname> rows
will be formatted separately, leading to varying column
widths across the row groups. The other output formats work better.
</para>
</tip>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>HISTCONTROL</varname></term>
<listitem>