Обсуждение: Re: [INTERFACES] ecpg cursors and scope
>> I think, that principly is correct contructions like this:
>
>No, to do this you need the PREPARE statement.
Thanks, but in PostgreSQL or ECPG manual isn't this... and I forgot
syntax from Oracle...Could you put some example (the best is the contruction
below)?
if (cond) exec sql declare cur cursor for select count (*) from tpm;
else exec sql declare cur cursor for select count (*) from tpm where col1 =
:cislo1;
exec sql open cur;
exec sql whenever not found break;
while (1)
{ exec sql fetch in cur into :cislo2;
}
Thanks...
-------------------------------------------------------------------------
Pavel Janousek (PaJaSoft) FoNet, spol. s r. o.
Vyvoj software, sprava siti, Unix, Web, Y2K Anenska 11, 602 00 Brno
E-mail: mailto:Janousek@FoNet.Cz Tel.: +420 5 4324 4749
SMS: mailto:P.Janousek@SMS.Paegas.Cz Fax.: +420 5 4324 4751
WWW: http://WWW.FoNet.Cz/ E-mail: mailto:Info@FoNet.Cz
--------------------------------------------------------------------------
On Fri, Apr 23, 1999 at 10:17:03AM +0200, Pavel PaJaSoft Janousek wrote:
> Thanks, but in PostgreSQL or ECPG manual isn't this... and I forgot
Shame on me. :-( Yes, the docs need much more work.
> syntax from Oracle...Could you put some example (the best is the contruction
> below)?
Please check the test source under .../ecpg/test.
How about this
if (cond) strcpy(query, "select count (*) from tpm");else strcpy(query, "select count (*) from tpm where col1 =
?");
exec sql prepare MM from :query;exec sql declare prep cursor for MM;
exec sql open prep using :cislo1;
exec sql whenever not found break;while (1){ exec sql fetch in cur into :cislo2;}
But speaking of this. It appears ecpg cannot do prepares without variables
at the moment. This is a bug. I just didn't see this so far.
Michael
--
Michael Meskes | Go SF 49ers!
Th.-Heuss-Str. 61, D-41812 Erkelenz | Go Rhein Fire!
Tel.: (+49) 2431/72651 | Use Debian GNU/Linux!
Email: Michael.Meskes@gmx.net | Use PostgreSQL!