Thread: PERFORM / FOUND, what's up?

PERFORM / FOUND, what's up?

From
Martin Brommer
Date:
Hi,

I'm trying to get an answer from a dynamic query using perform. The 
problem is that it sets the FOUND variable to true even when performing 
bogus queries.

Am I missing something here? The documentation says that PERFORM only 
sets FOUND to true if it finds and discards a row but doing something like:

qry := 'SELECT notafield FROM notatable'
PERFORM qry

Also sets FOUND to true, even more using a query like 'BLABLABLA'  also 
set found to true.

What am I doing wrong here?

Thanks for any help in advance,

Martin



Re: PERFORM / FOUND, what's up?

From
Tom Lane
Date:
Martin Brommer <martin@brommer.nl> writes:
> qry := 'SELECT notafield FROM notatable'
> PERFORM qry
> Also sets FOUND to true, even more using a query like 'BLABLABLA'  also 
> set found to true.

I think you are looking for EXECUTE, not PERFORM.  The above only
confirms that indeed "qry" is a scalar variable --- its contents
are not examined.
        regards, tom lane