Doc: minor improvement in pl/pgsql FETCH/MOVE documentation.

Explain that you can use any integer expression for the "count" in
pl/pgsql's versions of FETCH/MOVE, unlike the SQL versions which only
allow a constant.

Remove the duplicate version of this para under MOVE.  I don't see
a good reason to maintain two identical paras when we just said that
MOVE works exactly like FETCH.

Per Pavel Stehule, though I didn't use his text.

Discussion: https://postgr.es/m/CAFj8pRAcvSXcNdUGx43bOK1e3NNPbQny7neoTLN42af+8MYWEA@mail.gmail.com
This commit is contained in:
Tom Lane 2018-07-12 12:28:43 -04:00
parent cd073d8f70
commit 632b4ae92d
2 changed files with 5 additions and 21 deletions

View File

@ -3196,6 +3196,10 @@ FETCH <optional> <replaceable>direction</replaceable> { FROM | IN } </optional>
<literal>BACKWARD</literal>.
Omitting <replaceable>direction</replaceable> is the same
as specifying <literal>NEXT</literal>.
In the forms using a <replaceable>count</replaceable>,
the <replaceable>count</replaceable> can be any integer-valued
expression (unlike the SQL <command>FETCH</command> command,
which only allows an integer constant).
<replaceable>direction</replaceable> values that require moving
backward are likely to fail unless the cursor was declared or opened
with the <literal>SCROLL</literal> option.
@ -3233,26 +3237,6 @@ MOVE <optional> <replaceable>direction</replaceable> { FROM | IN } </optional> <
be checked to see whether there was a next row to move to.
</para>
<para>
The <replaceable>direction</replaceable> clause can be any of the
variants allowed in the SQL <xref linkend="sql-fetch"/>
command, namely
<literal>NEXT</literal>,
<literal>PRIOR</literal>,
<literal>FIRST</literal>,
<literal>LAST</literal>,
<literal>ABSOLUTE</literal> <replaceable>count</replaceable>,
<literal>RELATIVE</literal> <replaceable>count</replaceable>,
<literal>ALL</literal>,
<literal>FORWARD</literal> <optional> <replaceable>count</replaceable> | <literal>ALL</literal> </optional>, or
<literal>BACKWARD</literal> <optional> <replaceable>count</replaceable> | <literal>ALL</literal> </optional>.
Omitting <replaceable>direction</replaceable> is the same
as specifying <literal>NEXT</literal>.
<replaceable>direction</replaceable> values that require moving
backward are likely to fail unless the cursor was declared or opened
with the <literal>SCROLL</literal> option.
</para>
<para>
Examples:
<programlisting>

View File

@ -99,7 +99,7 @@ FETCH [ <replaceable class="parameter">direction</replaceable> [ FROM | IN ] ] <
This page describes usage of cursors at the SQL command level.
If you are trying to use cursors inside a <application>PL/pgSQL</application>
function, the rules are different &mdash;
see <xref linkend="plpgsql-cursors"/>.
see <xref linkend="plpgsql-cursor-using"/>.
</para>
</note>
</refsect1>