在事件触发器中获取表名

Chr*_*isB 5 postgresql postgresql-9.6

我有一个在创建、更改和删除表上执行的事件触发器。

create event trigger CustomizeTable
   on ddl_command_end
   when tag in ( 'create table', 'alter table', 'drop table' )
   execute procedure CustomizeTable();
Run Code Online (Sandbox Code Playgroud)

在该过程中,我想在新创建的表上创建触发器。

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

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

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

Lau*_*lbe 5

您必须使用文档中描述的事件触发器信息函数。