Документация по PostgreSQL 9.4.1 | |||
---|---|---|---|
Пред. | Уровень выше | Глава 41. PL/Tcl — процедурный язык Tcl | След. |
41.7. Процедуры событийных триггеров в PL/Tcl
На PL/Tcl можно написать процедуры событийных триггеров. PostgreSQL требует, чтобы процедура, которая будет вызываться как событийный триггер, была объявлена как функция без аргументов и возвращала тип event_trigger.
Информация от менеджера триггеров передаётся в тело процедуры в следующих переменных:
- $TG_event
Имя события, при котором срабатывает этот триггер.
- $TG_tag
Тег команды, для которой срабатывает этот триггер.
Возвращаемое значение триггерной процедуры игнорируется.
Следующий небольшой пример процедуры событийного триггера просто выдаёт замечание (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();
Пред. | Начало | След. |
Процедуры триггеров на PL/Tcl | Уровень выше | Модули и команда unknown |