plpgsql, declare blocks, and '=' versus ':='

Поиск
Список
Период
Сортировка
От James Robinson
Тема plpgsql, declare blocks, and '=' versus ':='
Дата
Msg-id 52962000-14ED-4BC2-8F5D-520F238FA78D@socialserve.com
обсуждение исходный текст
Ответы Re: plpgsql, declare blocks, and '=' versus ':='  (Alvaro Herrera <alvherre@commandprompt.com>)
Список pgsql-docs
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


В списке pgsql-docs по дате отправления:

Предыдущее
От: Laurent Buffat
Дата:
Сообщение: quote text array
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: plpgsql, declare blocks, and '=' versus ':='