在事件触发器中获取表名称

时间:2016-10-03 14:00:23

标签: postgresql postgresql-9.6

我有一个在create,alter和drop table上执行的事件触发器。

create event trigger CustomizeTable
   on ddl_command_end
   when tag in ( 'create table', 'alter table', 'drop table' )
   execute procedure CustomizeTable();

在程序中,我想在新创建的表上创建一个触发器。

create or replace function CustomizeTable() returns event_trigger as 
$$
begin
      EXECUTE 'create trigger DoAudit after update on XXXXXX...
end;
$$
language plpgsql;

如何在事件触发器中获取表名?

我尝试使用 TG_TABLE_NAME 解释here,但似乎这只适用于非事件触发器。

1 个答案:

答案 0 :(得分:3)

您必须使用the documentation中描述的事件触发器信息功能。