On Fri, Oct 24, 2008 at 7:57 PM, Tom Lane <[EMAIL PROTECTED]> wrote:
> "Tim Keitt" <[EMAIL PROTECTED]> writes:
>> The docs for FETCH indicate you can fetch from the current row using
>> FORWARD 0, but
>
>>     SPI_scroll_cursor_fetch(someportal, FETCH_FORWARD, 0);
>
>> fails for me. Is there a way to emulate FETCH FORWARD 0 with SPI?
>
> Fails how?  AFAICS that calls the same code that the SQL-level
> FETCH command would.
>
> You do realize that "FORWARD 0" means to re-fetch the current row,
> ie the most recently fetched row?  There isn't any current row in
> the initial state of a cursor.

Yes I do. The problem was my test case wasn't doing what I thought it
was doing. Its working now.

>
>> Also, I noticed that
>>    SPI_scroll_cursor_move(someportal, FETCH_BACKWARD, 1);
>> sets SPI_processed to 0, not 1. Is that the intended behavior?
>
> Well, it is if you don't have any row to move backward to ...

Got it. Again, the test case was screwed up. Also, I was trying
interpret SPI_processed as a kind of error flag, but clearly that's
the wrong way to think about it.

Thanks for the help.

THK

>
>                        regards, tom lane
>



-- 
Timothy H. Keitt
http://www.keittlab.org/

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

Reply via email to