Re: plpgsql - variable's names conflict with table field names - Mailing list pgsql-bugs

From Tom Lane
Subject Re: plpgsql - variable's names conflict with table field names
Date
Msg-id 10330.1077030076@sss.pgh.pa.us
Whole thread Raw
In response to plpgsql - variable's names conflict with table field names  (Pavel Stehule <stehule@kix.fsv.cvut.cz>)
Responses Re: plpgsql - variable's names conflict with table field  (Pavel Stehule <stehule@kix.fsv.cvut.cz>)
List pgsql-bugs
Pavel Stehule <stehule@kix.fsv.cvut.cz> writes:
>     When I declare variable with same name as field of table, then I
> have a problem with insert cmd in plpgsql procedure.

Don't do that.

> Is it plpgsql error or my bug?

You could argue it either way, perhaps, but it's unlikely to get
changed.  In general plpgsql cannot tell whether a variable name
appearing in a SQL command ought to be substituted for or not, and so it
just always does it.  I think trying to be smart would create as many
pitfalls as it'd solve.  The best practice is not to use plpgsql
variable names that match table or field names you need to access in the
same procedure.

            regards, tom lane

pgsql-bugs by date:

Previous
From: Pavel Stehule
Date:
Subject: plpgsql - variable's names conflict with table field names
Next
From: Pavel Stehule
Date:
Subject: Re: plpgsql - variable's names conflict with table field