是否知道是否可以在多个表上创建一个触发器。我的意思是:
假设有3个表X,Y,Z。 我想在表A中插入一行,用于任何X,Y,Z表上的任何UPDATE,INSERT或DELETE操作。
答案 0 :(得分:0)
你必须像每个表一样制作每个触发器,没有其他解决方案:
CREATE TRIGGER trig_X_changes
ON X
FOR INSERT, UPDATE, DELETE
CREATE TRIGGER trig_Y_changes
ON Y
FOR INSERT, UPDATE, DELETE
....
答案 1 :(得分:0)
您不能在三个不同的表上创建一个触发器,但如果您想合并代码,可以将触发器代码(插入到表A中)放入存储过程,并在每个X Y&上创建一个触发器。只调用存储过程的Z表。
请注意,如果存储的proc代码需要访问inserted或deleted表,则需要将它们作为参数传递给触发器中的存储过程。