From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Gauthier, Dave" <dave(dot)gauthier(at)intel(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: pl-pgsql, recursion and cursor contexting |
Date: | 2008-09-29 14:27:30 |
Message-ID: | 11762.1222698450@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
"Gauthier, Dave" <dave(dot)gauthier(at)intel(dot)com> writes:
> I'm in the business of writting recursive PL-Pgsql functions. I need to
> know what happens to the data stream from a select cursor inside of
> which the recursive call is made. For example....
Nothing, unless you use explicitly-named cursors and force a cursor name
conflict. A for-loop's internal cursor always gets a name chosen to be
distinct from every other existing cursor, so there's no conflict.
> This comes up witht he right answer. IOW, making the recursive call
> from within the "for rec in..." loop doesn't seem to destroy the data
> streams from earlier calls. I just need to make sure that this will
> always be the case and that getting the correct result in this example
> is not just an artifact of it's simplicity. I know, for example, this
> was a no-no in Oracle.
Wow, are they really that broken?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Pavel Stehule | 2008-09-29 14:27:35 | Re: pl-pgsql, recursion and cursor contexting |
Previous Message | john.crawford | 2008-09-29 14:21:05 | database question |