ALTER TRIGGER — 更改一个触发器的定义
ALTER TRIGGERnameONtable_nameRENAME TOnew_nameALTER TRIGGERnameONtable_name[ NO ] DEPENDS ON EXTENSIONextension_name
ALTER TRIGGER 更改一个现有触发器的属性。
RENAME 子句更改给定触发器的名称,而不以其他方式更改触发器定义。如果触发器所在的表是一个分区表,那么分区中相应的克隆触发器也会被重命名。
DEPENDS ON EXTENSION 子句将该触发器标记为依赖于一个扩展,这样如果该扩展被删除,该触发器也将被自动删除。
你必须拥有该触发器所作用的表,才被允许更改其属性。
name要更改的现有触发器的名称。
table_name该触发器所作用的表的名称。
new_name该触发器的新名称。
extension_name 该触发器要依赖的扩展的名称(如果指定了 NO,则表示不再依赖它)。被标记为依赖于某个扩展的触发器会在该扩展被删除时被自动删除。
临时启用或禁用触发器的功能由 ALTER TABLE 提供,而不是由 ALTER TRIGGER 提供,因为 ALTER TRIGGER 没有便捷的方式来表达一次性启用或禁用一个表的所有触发器这一选项。
重命名一个现有触发器:
ALTER TRIGGER emp_stamp ON emp RENAME TO emp_track_chgs;
将一个触发器标记为依赖于某个扩展:
ALTER TRIGGER emp_stamp ON emp DEPENDS ON EXTENSION emplib;
ALTER TRIGGER 是对 SQL 标准的 PostgreSQL 扩展。