From: | Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> |
---|---|
To: | Martín Marqués <martin(dot)marques(at)gmail(dot)com> |
Cc: | Merlin Moncure <mmoncure(at)gmail(dot)com>, pgsql-general <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: passing cursors from one PL function to another |
Date: | 2011-08-29 19:12:35 |
Message-ID: | CAFj8pRA1jJjzm3btPAvMN=n4E6r59AkOGNuUfD_xCQ26U1fw4A@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
2011/8/29 Martín Marqués <martin(dot)marques(at)gmail(dot)com>:
> El día 29 de agosto de 2011 15:52, Pavel Stehule
> <pavel(dot)stehule(at)gmail(dot)com> escribió:
>> 2011/8/29 Martín Marqués <martin(dot)marques(at)gmail(dot)com>:
>>> El día 29 de agosto de 2011 15:28, Pavel Stehule
>>> <pavel(dot)stehule(at)gmail(dot)com> escribió:
>>>> 2011/8/29 Martín Marqués <martin(dot)marques(at)gmail(dot)com>:
>>>>> Actually, what we are trying to do is return 2 recordsets with the
>>>>> same function call (simulate SP from SQL Server returning 2
>>>>> recordsets).
>>>>>
>>>>> I found out that I had to do PERFORM * FROM construyecursordesdequery($1, query)
>>>>> which works now, but can't run 2 different queries on the same cursor.
>>>>>
>>>>
>>>> in your example you use a static cursor.
>>>
>>> As opposed to? I see no way to define a cursor not-static.
>>
>> refcursors can be dynamic defined
>
> OK, I'm totally lost. How do you define a dynamic cursor? Couldn't
> find anything in the manuals.
>
DECLARE
curs1 refcursor;
BEGIN
OPEN curs1 FOR EXECUTE 'SELECT ...';
>
> --
> Martín Marqués
> select 'martin.marques' || '@' || 'gmail.com'
> DBA, Programador, Administrador
>
From | Date | Subject | |
---|---|---|---|
Next Message | JD Wong | 2011-08-29 19:22:43 | dropdb: database removal failed: active sessions |
Previous Message | Martín Marqués | 2011-08-29 19:02:51 | Re: passing cursors from one PL function to another |