25 假设我们有以下情况: 我们有一张桌子(假设Table_A),其中有一个触发器INSERT。触发工作是table_B根据中的插入值更新其中的某些行table_A。 现在,当我们在表中简单地插入一行时,一切正常,但是在通过事务插入数据的情况下呢?触发器将等待所有事务语句成功运行,还是在识别到插入后立即触发?如果触发器在识别出第一个插入后立即触发,那么如果事务在最后一行失败,会发生什么?有什么机制可以解决这种情况吗? sql-server trigger transaction — Veljasije source
37 插入始终在事务内。 如果您没有显式的BEGIN TRAN ... COMMIT,SET IMPLICIT_TRANSACTIONS ON则该语句将作为自包含的自动提交事务运行。 触发器始终是触发触发器的操作的事务的一部分。如果触发器中发生错误导致事务回滚,则触发操作也将回滚。 触发器隐式XACT_ABORT打开。启用此设置的错误将自动导致事务回滚(带有RAISERROR语句的代码中引发的错误除外)。 — 马丁·史密斯 source