Change MOVE LAST to MOVE ALL.
Standard says FETCH LAST is after last row, and we don't do that.
This commit is contained in:
parent
c7bceca156
commit
802a4d4111
@ -1,5 +1,5 @@
|
||||
<!--
|
||||
$Header: /cvsroot/pgsql/doc/src/sgml/ref/fetch.sgml,v 1.23 2003/01/08 00:22:26 tgl Exp $
|
||||
$Header: /cvsroot/pgsql/doc/src/sgml/ref/fetch.sgml,v 1.24 2003/02/03 14:04:24 momjian Exp $
|
||||
PostgreSQL documentation
|
||||
-->
|
||||
|
||||
@ -22,7 +22,7 @@ PostgreSQL documentation
|
||||
</refsynopsisdivinfo>
|
||||
<synopsis>
|
||||
FETCH [ <replaceable class="PARAMETER">direction</replaceable> ] [ <replaceable class="PARAMETER">count</replaceable> ] { IN | FROM } <replaceable class="PARAMETER">cursor</replaceable>
|
||||
FETCH [ FORWARD | BACKWARD | RELATIVE ] [ <replaceable class="PARAMETER">#</replaceable> | ALL | LAST | NEXT | PRIOR ]
|
||||
FETCH [ FORWARD | BACKWARD | RELATIVE ] [ <replaceable class="PARAMETER">#</replaceable> | ALL | NEXT | PRIOR ]
|
||||
{ IN | FROM } <replaceable class="PARAMETER">cursor</replaceable>
|
||||
</synopsis>
|
||||
|
||||
@ -105,17 +105,6 @@ FETCH [ FORWARD | BACKWARD | RELATIVE ] [ <replaceable class="PARAMETER">#</repl
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
LAST
|
||||
</term>
|
||||
<listitem>
|
||||
<para>
|
||||
Same as <literal>ALL</>, but conforms to SQL92 syntax.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term>
|
||||
NEXT
|
||||
@ -212,7 +201,7 @@ WARNING: FETCH/ABSOLUTE not supported, using RELATIVE
|
||||
If the number of rows remaining in the cursor is less
|
||||
than <replaceable class="PARAMETER">#</replaceable>,
|
||||
then only those available are fetched.
|
||||
Substituting the keyword ALL or LAST in place of a number will
|
||||
Substituting the keyword ALL in place of a number will
|
||||
cause all remaining rows in the cursor to be retrieved.
|
||||
Rows may be fetched in both FORWARD and BACKWARD
|
||||
directions. The default direction is FORWARD.
|
||||
@ -220,13 +209,13 @@ WARNING: FETCH/ABSOLUTE not supported, using RELATIVE
|
||||
|
||||
<para>
|
||||
The cursor position can be before the first row of the query result, or on
|
||||
any particular row of the result, or after the last row of the result.
|
||||
any particular row of the result.
|
||||
When created, a cursor is positioned before the first row. After fetching
|
||||
some rows, the cursor is positioned on the last row retrieved. A new
|
||||
<command>FETCH</command> always steps one row in the specified direction
|
||||
(if possible) before beginning to return rows. If the
|
||||
<command>FETCH</command> requests more rows than available, the cursor is
|
||||
left positioned after the last row of the query result (or before the first
|
||||
left positioned on the last row of the query result (or on the first
|
||||
row, in the case of a backward fetch). This will always be the case after
|
||||
<command>FETCH ALL</>.
|
||||
</para>
|
||||
@ -236,7 +225,7 @@ WARNING: FETCH/ABSOLUTE not supported, using RELATIVE
|
||||
A zero row count requests fetching the current row without moving the
|
||||
cursor --- that is, re-fetching the most recently fetched row.
|
||||
This will succeed unless the cursor is positioned before the
|
||||
first row or after the last row; in which case, no row is returned.
|
||||
first row; in which case, no row is returned.
|
||||
</para>
|
||||
</tip>
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
<!--
|
||||
$Header: /cvsroot/pgsql/doc/src/sgml/ref/move.sgml,v 1.16 2003/01/08 00:22:26 tgl Exp $
|
||||
$Header: /cvsroot/pgsql/doc/src/sgml/ref/move.sgml,v 1.17 2003/02/03 14:04:24 momjian Exp $
|
||||
PostgreSQL documentation
|
||||
-->
|
||||
|
||||
@ -34,7 +34,8 @@ MOVE [ <replaceable class="PARAMETER">direction</replaceable> ] [ <replaceable c
|
||||
</title>
|
||||
<para>
|
||||
<command>MOVE</command> allows the user to move the cursor position a
|
||||
specified number of rows, or all the way to the end or start of the query.
|
||||
specified number of rows, or to the beginning or end of the cursor.
|
||||
<command>MOVE ALL</command> moves to the last row of the cursor.
|
||||
<command>MOVE</command> works exactly like the <command>FETCH</command>
|
||||
command, except it only repositions the cursor and does not return rows.
|
||||
</para>
|
||||
|
@ -11,7 +11,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.397 2003/02/02 23:46:38 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/gram.y,v 2.398 2003/02/03 14:04:24 momjian Exp $
|
||||
*
|
||||
* HISTORY
|
||||
* AUTHOR DATE MAJOR EVENT
|
||||
@ -361,7 +361,7 @@ static void doNegateFloat(Value *v);
|
||||
|
||||
KEY
|
||||
|
||||
LANCOMPILER LANGUAGE LAST LEADING LEFT LEVEL LIKE LIMIT
|
||||
LANCOMPILER LANGUAGE LEADING LEFT LEVEL LIKE LIMIT
|
||||
LISTEN LOAD LOCAL LOCALTIME LOCALTIMESTAMP LOCATION
|
||||
LOCK_P
|
||||
|
||||
@ -2713,7 +2713,6 @@ fetch_how_many:
|
||||
Iconst { $$ = $1; }
|
||||
| '-' Iconst { $$ = - $2; }
|
||||
| ALL { $$ = INT_MAX; }
|
||||
| LAST { $$ = INT_MAX; }
|
||||
| NEXT { $$ = 1; }
|
||||
| PRIOR { $$ = -1; }
|
||||
;
|
||||
@ -7131,7 +7130,6 @@ unreserved_keyword:
|
||||
| KEY
|
||||
| LANCOMPILER
|
||||
| LANGUAGE
|
||||
| LAST
|
||||
| LEVEL
|
||||
| LISTEN
|
||||
| LOAD
|
||||
|
@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/keywords.c,v 1.132 2002/12/12 20:35:13 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/keywords.c,v 1.133 2003/02/03 14:04:24 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@ -172,7 +172,6 @@ static const ScanKeyword ScanKeywords[] = {
|
||||
{"key", KEY},
|
||||
{"lancompiler", LANCOMPILER},
|
||||
{"language", LANGUAGE},
|
||||
{"last", LAST},
|
||||
{"leading", LEADING},
|
||||
{"left", LEFT},
|
||||
{"level", LEVEL},
|
||||
|
Loading…
Reference in New Issue
Block a user