PostgreSQL 9.4.4 文档 | |||
---|---|---|---|
上一页 | 上一级 | 章 41. PL/Tcl - Tcl 过程语言 | 下一页 |
事件触发器程序可以使用PL/Tcl编写。PostgreSQL 要求要被调用做事件触发器的程序必须作为一个函数来声明, 不带有任何参数并且返回类型为event_trigger。
来自触发器管理者的信息以下列变量传递到程序体:
触发触发器的事件的名称。
被触发的触发器的命令标签。
被忽略的触发器程序的返回值。
这里是一个小的示例事件触发器程序,每次执行提供的命令时简单的抛出 NOTICE信息:
CREATE OR REPLACE FUNCTION tclsnitch() RETURNS event_trigger AS $$ elog NOTICE "tclsnitch: $TG_event $TG_tag" $$ LANGUAGE pltcl; CREATE EVENT TRIGGER tcl_a_snitch ON ddl_command_start EXECUTE PROCEDURE tclsnitch();