On 1/11/2010 8:16 AM, Aleksey Onopriyenko wrote:
Hello.
We are trying to migrate from Informix 9.4 to PostgreSQL. As part of
migration we are porting our client application.
So we need reimplement such functionality:
1. Declare a cursor using to _parameterized_ SELECT statement. It should
be possible to specify cursor's name (and, perhaps, the statement)
dynamically.
2. Open that cursor (in another C-function) passing parameters to it.
3. Fetch records from result set.
4. Close the cursor.
Steps 2-4 may be repeated if necessary.
Is it possible with ecpg or libpq?
----
Best regards,
Aleksey
You dont need cursors, really.
In code (a little sudo-code), do:
q := prepare('select f1, f2 from table_x where id = $1');
then you can pass it around as you like, until...
q.params[0] := 42;
q.open();
while not q.eof()
begin
print q.field[0].asString, "\n";
q.next();
end
This is NOT libpq sudo-code, its delphi'ish, which uses libpq under the
hood. My point being, you dont really need cursors, just prepare a
select statement, set it params, fire it off, iterate the result set...
done. And its re-useable.
Unless I missed your purpose.
-Andy
--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general