我有一个已存在的 Postgres 9.3 数据库触发器,定义如下:
CREATE TRIGGER trig
AFTER UPDATE OR DELETE
ON tab2
FOR EACH ROW
EXECUTE PROCEDURE proc3();
我想把触发器更改为以下内容:
AFTER INSERT OR UPDATE OR DELETE
关于ALTER TRIGGER
的手册没有解释如何进行操作。
我想修改触发器而不是删除它,这是否可能?
我有一个已存在的 Postgres 9.3 数据库触发器,定义如下:
CREATE TRIGGER trig
AFTER UPDATE OR DELETE
ON tab2
FOR EACH ROW
EXECUTE PROCEDURE proc3();
AFTER INSERT OR UPDATE OR DELETE
关于ALTER TRIGGER
的手册没有解释如何进行操作。
我想修改触发器而不是删除它,这是否可能?
BEGIN;
DROP TRIGGER IF EXISTS trig on tab2;
CREATE TRIGGER trig
AFTER INSERT OR UPDATE OR DELETE
ON tab2
FOR EACH ROW
EXECUTE PROCEDURE proc3();
COMMIT;
CREATE OR REPLACE
语法:
CREATE OR REPLACE TRIGGER
将创建一个新的触发器,或替换现有的触发器。要替换现有触发器的当前定义,请使用
CREATE OR REPLACE TRIGGER
,指定现有触发器的名称和父表。所有其他属性都将被替换。
CREATE OR REPLACE TRIGGER trig
AFTER INSERT OR UPDATE OR DELETE
ON tab2
FOR EACH ROW
EXECUTE PROCEDURE proc3();