plPerl: How to iterate over $_TD->{new} in a trigger function?
В списке pgsql-interfaces по дате отправления:
| От | Dirk Heinrichs |
|---|---|
| Тема | plPerl: How to iterate over $_TD->{new} in a trigger function? |
| Дата | |
| Msg-id | 200606282000.43782.dirk.heinrichs@online.de обсуждение исходный текст |
| Ответы |
Re: plPerl: How to iterate over $_TD->{new} in a trigger function?
|
| Список | pgsql-interfaces |
Hi,
I want to write a generic trigger function, which can be attached to any
table, but it seems I'm to stupid :-) to get column/value pairs out of
$_TD->{new} and $_TD->{old}.
Here is my sample code:
create or replace function test_trig() returns trigger as $$ elog (INFO, "Table is: $_TD->{relname}\n"); my
%newrow= %_TD->{new}; elog (INFO, "$x=$y\n") while (($x,$y) = each %newrow); return;
$$ language plperl;
CREATE trigger trig1 after update or insert or delete on test for each row
execute procedure test_trig();
Table test can be anything. This is what I get when I insert something:
# insert into test (data) values ('foo');
INFO: Table is: test
INFO: =
INSERT 0 1
What I want to get at the second "INFO:" line is:
INFO: data=foo
Any hints?
Thanks...
Dirk
В списке pgsql-interfaces по дате отправления:
Сайт использует файлы cookie для корректной работы и повышения удобства. Нажимая кнопку «Принять» или продолжая пользоваться сайтом, вы соглашаетесь на их использование в соответствии с Политикой в отношении обработки cookie ООО «ППГ», в том числе на передачу данных из файлов cookie сторонним статистическим и рекламным службам. Вы можете управлять настройками cookie через параметры вашего браузера