From: | "Albert REINER" <areiner(at)tph(dot)tuwien(dot)ac(dot)at> |
---|---|
To: | PostgreSQL-SQL <pgsql-sql(at)postgreSQL(dot)org> |
Subject: | PL/pgSQL: possible parsing or documentation bug? |
Date: | 2001-01-31 21:39:06 |
Message-ID: | 20010131223906.A1337@frithjof |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Saluton,
plpgsql seems to get confused when using variable names that coincide
with, e.g., column names:
create Function IdOfPossiblyNewAuthor(text) returns int4 as '
declare
id int4;
begin
select id into id from author where name = $1;
raise notice ''ID found: %'', id;
if id is null then
insert into author (name) values ($1);
select currval(''author_id_seq'') into id;
raise debug ''Author inserted. ID: %'', id;
end if;
return id;
end;
' language 'plpgsql' with (IsCachable);
Logically it is clear which "id" should be parsed as the variable,
which as author.id, but I have to use a different name to make this
work. I do not see any mention on this restriction of variable names
(the full extent of which I do not know) in the documentation (7.0.2).
Albert.
--
--------------------------------------------------------------------------
Albert Reiner <areiner(at)tph(dot)tuwien(dot)ac(dot)at>
Deutsch * English * Esperanto * Latine
--------------------------------------------------------------------------
From | Date | Subject | |
---|---|---|---|
Next Message | Justin Clift | 2001-02-01 02:50:55 | HELP: Scarey pl/pgsql problem |
Previous Message | miss | 2001-01-31 21:25:18 | Archival of Live database to Historical database |