Обсуждение: "EXECUTE ... into var" doesn't set FOUND: bug or feature?
Hi, I noticed that in a pl/pgsql function FOUND is not set after an EXECUTE ... into var; Bug or feature?
Hello 2010/9/16 Louis-David Mitterrand <vindex+lists-pgsql-general@apartia.org>: > Hi, > > I noticed that in a pl/pgsql function FOUND is not set after an > > EXECUTE ... into var; > > Bug or feature? > feature :( use a GET DIAGNOSTICS statement instead Regards Pavel Stehule > -- > Sent via pgsql-general mailing list (pgsql-general@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general >
Louis-David Mitterrand <vindex+lists-pgsql-general@apartia.org> writes: > I noticed that in a pl/pgsql function FOUND is not set after an > EXECUTE ... into var; > Bug or feature? It's behaving as documented: http://www.postgresql.org/docs/9.0/static/plpgsql-statements.html#PLPGSQL-STATEMENTS-DIAGNOSTICS Adding EXECUTE to the list of statements that change FOUND would have a rather large risk of breaking existing plpgsql functions, IMO. regards, tom lane
On Thu, Sep 16, 2010 at 10:12:57AM -0400, Tom Lane wrote: > Louis-David Mitterrand <vindex+lists-pgsql-general@apartia.org> writes: > > I noticed that in a pl/pgsql function FOUND is not set after an > > EXECUTE ... into var; > > Bug or feature? > > It's behaving as documented: > http://www.postgresql.org/docs/9.0/static/plpgsql-statements.html#PLPGSQL-STATEMENTS-DIAGNOSTICS > > Adding EXECUTE to the list of statements that change FOUND would have a > rather large risk of breaking existing plpgsql functions, IMO. but is really surprising and non-intuitive, given that 'return query execute' does.
2010/9/16 Louis-David Mitterrand <vindex+lists-pgsql-general@apartia.org>: > On Thu, Sep 16, 2010 at 10:12:57AM -0400, Tom Lane wrote: >> Louis-David Mitterrand <vindex+lists-pgsql-general@apartia.org> writes: >> > I noticed that in a pl/pgsql function FOUND is not set after an >> > EXECUTE ... into var; >> > Bug or feature? >> >> It's behaving as documented: >> http://www.postgresql.org/docs/9.0/static/plpgsql-statements.html#PLPGSQL-STATEMENTS-DIAGNOSTICS >> >> Adding EXECUTE to the list of statements that change FOUND would have a >> rather large risk of breaking existing plpgsql functions, IMO. > > but is really surprising and non-intuitive, given that 'return query > execute' does. RETURN QUERY EXECUTE is a new statement. And it has not original in PL/SQL so there are not reason to copy misfeature from Oracle. Regards Pavel Stehule > > -- > Sent via pgsql-general mailing list (pgsql-general@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgsql-general >