Re: migration: parameterized statement and cursor
От | Andy Colson |
---|---|
Тема | Re: migration: parameterized statement and cursor |
Дата | |
Msg-id | 4B4B959C.7060308@squeakycode.net обсуждение исходный текст |
Ответ на | migration: parameterized statement and cursor (Aleksey Onopriyenko <aleksey.alt@gmail.com>) |
Список | pgsql-general |
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
В списке pgsql-general по дате отправления: