有没有办法确保执行 SQL Server 触发器?

Set*_*nte 9 trigger sql-server

我的主管对在流程中使用触发器犹豫不决,因为如果恰逢网络中断,流程将无法完成。SQL Server 是否在调用过程的事务中包含触发器?如果没有,实现这一点的最佳方法是什么?

Tev*_*o D 11

是的。触发器作为调用者事务范围内的隐式嵌套事务发生。触发器将作为此事务的一部分提交或回滚。

看:


A-K*_*A-K 7

触发器不触发的情况很多,例如:

  • 一个表被删除。

  • 表被截断。

  • 嵌套和/或递归触发器的设置可防止触发器触发。

因此,在 SQL Server 中,保证触发器会执行。有时可以绕过。

触发器也可能不正确。无论哪种方式,您最终都可能在数据库中出现孤儿。

如果您发布您想要用触发器完成的任务,也许我们可以帮助您通过约束来实现它。