AFTER和INSTEAD OF触发器用途说明

来源:互联网 发布:php vardump 编辑:程序博客网 时间:2024/04/25 05:03

AFTER  

 指定触发器只有在触发 SQL 语句中指定的所有操作都已成功执行后才激发。所有的引用级联操作和约束检查也必须成功完成后,才能执行此触发器。  

 如果仅指定 FOR 关键字,则 AFTER 是默认设置。  

 不能在视图上定义 AFTER 触发器。  

INSTEAD OF  

 指定执行触发器而不是执行触发 SQL 语句,从而替代触发语句的操作。  

 在表或视图上,每个 INSERT、UPDATE 或 DELETE 语句最多可以定义一个 INSTEAD OF 触发器。然而,可以在每个具有 INSTEAD OF 触发器的视图上定义视图。  

 INSTEAD OF 触发器不能在 WITH CHECK OPTION 的可更新视图上定义。如果向指定了 WITH CHECK OPTION 选项的可更新视图添加 INSTEAD OF 触发器,SQL Server 将产生一个错误。用户必须用 ALTER VIEW 删除该选项后才能定义 INSTEAD OF 触发器。