Обсуждение: parametrized NOTIFY - issue in plpgsql, maybe ToDo

Поиск
Список
Период
Сортировка

parametrized NOTIFY - issue in plpgsql, maybe ToDo

От
Pavel Stehule
Дата:
Hello

I am testing NOTIFY statement. It have to be used from plpgsql via
EXECUTE, because doesn't support paramaters.

Can be it documented somewhere?

create or replace function foo(a varchar)
returns void as $$
begin execute 'notify xxx, ' || quote_literal(a); return;
end;
$$ language plpgsql;
CREATE FUNCTION
Time: 2,513 ms
pavel@postgres:5432=# select foo('pavel');foo
-----

(1 row)

Time: 31,732 ms
pavel@postgres:5432=# listen xxx;
LISTEN
Time: 0,271 ms
pavel@postgres:5432=# select foo('pavel');foo
-----

(1 row)

Time: 436,058 ms
Asynchronous notification "xxx" with payload "pavel" received from
server process with PID 4730.
pavel@postgres:5432=#


Re: parametrized NOTIFY - issue in plpgsql, maybe ToDo

От
Tom Lane
Дата:
Pavel Stehule <pavel.stehule@gmail.com> writes:
> I am testing NOTIFY statement. It have to be used from plpgsql via
> EXECUTE, because doesn't support paramaters.

> Can be it documented somewhere?

It is.  Use the function instead.
        regards, tom lane


Re: parametrized NOTIFY - issue in plpgsql, maybe ToDo

От
Pavel Stehule
Дата:
2010/3/16 Tom Lane <tgl@sss.pgh.pa.us>:
> Pavel Stehule <pavel.stehule@gmail.com> writes:
>> I am testing NOTIFY statement. It have to be used from plpgsql via
>> EXECUTE, because doesn't support paramaters.
>
>> Can be it documented somewhere?
>
> It is.  Use the function instead.

ok thank you for info

Pavel
>
>                        regards, tom lane
>