Search Postgresql Archives

Re: parameters in functions and overlap with names of columns

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



2009/8/4 Ivan Sergio Borgonovo <mail@xxxxxxxxxxxxxxx>:
> On Tue, 4 Aug 2009 16:01:58 +0200
> Pavel Stehule <pavel.stehule@xxxxxxxxx> wrote:
>
>> 2009/8/4 Ivan Sergio Borgonovo <mail@xxxxxxxxxxxxxxx>:
>> > I've
>> >
>> > create or replace function(...
>> >
>> > declare
>> >  col1 varchar(32);
>> > ...
>> >
>> >  create table pippo(
>> >    col1 varchar(32),
>> > ...
>> >
>> > Unfortunately I can't schema specify the column to avoid name
>> > overlap.
>> >
>> > Is there another way other than just simply rename the variable?
>>
>> yes - the most common is an using of prefix '_' for local plpgsql
>> variables. Other possibility is using qualified names.
>
> Just to be sure... by qualified names you mean schema qualified name
> or table qualified names in case of columns... right...
>
> For a second I had the hope there was another way other than having a
> col1, a _col1 and a __col1 too ;)
>

Maybe prefix _ isn't nice, but it is 100% safe. I use both - prefix
for variables and aliases for columns. The collision of column and
variable names is over lot of very strange bugs, and any way that can
protect us is perfect.

Pavel

> --
> Ivan Sergio Borgonovo
> http://www.webthatworks.it
>
>
> --
> Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>

-- 
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux