I am using the libpq interface method PQexec() to execute SELECT
statements with a LIMIT clause. I declare a cursor with hold and use
PQecec() to execute FETCH NEXT on that cursor.
At a certain moment PQntuples() returns 0 after a fetch, but I cannot
check for the actual reason: is the physical end of the table (or
selection) reached or is the end of my limit reached.
In the former case I'm done. But in the latter case I can continue
selecting records by using SELECT with a LIMIT and OFFSET clause.
Of course there are workarounds:
count the number of records (but if the size of the table or select set
is a multiple of my LIMIT value that does not work)
just try another SELECT and if the FECTH NEXT will fail again I'm done
However I am looking for something more elegant like a status flag in
libpq that indicate EOF or End-Of-limit.
Jan van der Weijde
pgsql-interfaces by date
|Next:||From: Alvaro Herrera||Date: 2007-01-12 00:36:41|
|Subject: Re: How do I detect End-of-table or End-of-limit ?|
|Previous:||From: L Bayuk||Date: 2007-01-10 00:41:00|
|Subject: Re: BCC55 and libpq 8.2|