Re: Unexpected results: string vs. direct SQL - Mailing list pgsql-novice

From Tom Lane
Subject Re: Unexpected results: string vs. direct SQL
Date
Msg-id 14456.1306805989@sss.pgh.pa.us
Whole thread Raw
In response to Unexpected results: string vs. direct SQL  (Thangalin <thangalin@gmail.com>)
List pgsql-novice
Thangalin <thangalin@gmail.com> writes:
> The following code works as expected, returning two columns of data (a row
> number and a valid value):
> ...
> The following code does not work as expected; the first column is a row
> number, the second column is NULL.

I think the problem is that you're assuming "amount" will refer to a
table column of the query, when actually it's a local variable of the
plpgsql function.  The second interpretation will take precedence unless
you qualify the column reference with the table's name/alias.

(BTW, PG 9.0 will throw an error by default when there's an ambiguity of
this type.)

> My second question is tangentially related: how do you use PREPARE inside of
> a stored procedure?

There is no need to use PREPARE, because every SQL query in plpgsql is
effectively prepared automatically.

            regards, tom lane

pgsql-novice by date:

Previous
From: "Jean-Yves F. Barbier"
Date:
Subject: strange SSL msg
Next
From: Dan Hajduk
Date:
Subject: CentOS 5.6