Re: Weird misinterpretation of EXECUTE in PL/pgSQL - Mailing list pgsql-bugs

From Tom Lane
Subject Re: Weird misinterpretation of EXECUTE in PL/pgSQL
Date
Msg-id 3396.1171047264@sss.pgh.pa.us
Whole thread Raw
In response to Weird misinterpretation of EXECUTE in PL/pgSQL  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-bugs
Peter Eisentraut <peter_e@gmx.net> writes:
> In the presence of a comma-separated list of arguments it seems to
> intepret the EXECUTE command wildly differently.  What is going on here?

Basically it evaluates the string-producing argument by sticking SELECT
on the front and handing it to the main SQL engine.  So what you've got
there is a SELECT that produces two result columns, where the EXECUTE
code was only expecting to get one.  (Look at exec_eval_expr in pl_exec.c)

It's a syntax error in any case; not sure if we can easily produce a
better error message, or what a better error message would be.

            regards, tom lane

pgsql-bugs by date:

Previous
From: Peter Eisentraut
Date:
Subject: Weird misinterpretation of EXECUTE in PL/pgSQL
Next
From: Lar
Date:
Subject: Re: BUG #2393: update fails with unique constraint violation