Hi,
I'm on PostgreSQL 9.2.2 and trying to use no scroll cursor for some data fetch. 
But when moving cursor ahead one record and the fetching the actual record the 
error "cursor can only scan forward" is returned. I don't know if I'm doing 
something wrong but I don't think I'm going backward with cursor. Here is the 
code that demonstrate it 

BEGIN;

DECLARE CUR_1 NO SCROLL CURSOR WITHOUT HOLD FOR SELECT * FROM 
GENERATE_SERIES(1, 2);

FETCH FORWARD 0 FROM CUR_1; -- 0

MOVE FORWARD FROM CUR_1;

FETCH FORWARD 0 FROM CUR_1; -- 1

ABORT;

The line marked as "-- 0" is working OK, the line marked as "-- 1" is throwing 
error:

ERROR:  cursor can only scan forward
HINT:  Declare it with SCROLL option to enable backward scan.

********** Error **********

ERROR: cursor can only scan forward
SQL state: 55000
Hint: Declare it with SCROLL option to enable backward scan.

I want to iterate all records with cursor from beginning to end. This sample 
could be rewritten using FETCH FORWARD 1 ... without using MOVE but I'm 
interested with solution which throws error.

Thank you

Trigve


-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to