It seems that [ in 8.2.9 at least ], in a plpgsql declare block, assignment to declared variable can use either the proper ':=' operator or the unexpected and undocumented '=' operator. See following script. The magic handling of '=' ought to get documented at least.

[ plpgsql-declarations.html makes no mention of '=' token handling in either 8.3 or 8.2. docs ]

---
create or replace function test_1() returns int as
$$
declare
        value int = 12; -- wow -- no colon!
begin
        return value;
end;
$$ language plpgsql;


create or replace function test_2() returns int as
$$
declare
        value int := 14; -- correct
begin
        return value;
end;
$$ language plpgsql;



select test_1();
-- returns 12

select test_2();
-- returns 14

-----





----
James Robinson
Socialserve.com


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

Reply via email to