PostgreSQL 9.4.4 中文手册 | |||
---|---|---|---|
上一页 | 上一级 | 章 42. PL/Perl - Perl 过程语言 | 下一页 |
PL/Perl可以用来书写事件触发器函数。在一个事件触发器函数中, 散列引用$_TD包含关于当前触发器事件的信息。 $_TD是一个全局变量,它获取每个触发器调用的单独的本地值。 $_TD域的散列引用是:
触发触发器的事件的名字。
被触发的触发器的命令标签。
被忽略的触发器程序的返回值。
这里有一个事件触发器函数的示例,对上面的一些描述做了解释:
CREATE OR REPLACE FUNCTION perlsnitch() RETURNS event_trigger AS $$ elog(NOTICE, "perlsnitch: " . $_TD->{event} . " " . $_TD->{tag} . " "); $$ LANGUAGE plperl; CREATE EVENT TRIGGER perl_a_snitch ON ddl_command_start EXECUTE PROCEDURE perlsnitch();