觸發(fā)器始終作為正在執(zhí)行觸發(fā)語句的同一事務(wù)的一部分執(zhí)行。如果觸發(fā)器代碼塊中未發(fā)生異常,則當且僅當提交包含觸發(fā)語句的事務(wù)時,才會提交觸發(fā)器中任何DML命令的效果。因此,如果事務(wù)回滾,則觸發(fā)器中任何DML命令的效果也都將回滾。

如果在觸發(fā)器代碼塊中確實發(fā)生異常,但該異常在異常部分進行了捕獲和處理,則觸發(fā)器中任何DML命令的效果仍然會回滾。但是,觸發(fā)語句本身不會回滾,除非應(yīng)用程序強制回滾封裝事務(wù)。

如果在觸發(fā)器代碼塊中發(fā)生的異常未處理,則封裝觸發(fā)器的事務(wù)將中止并回滾。因此,觸發(fā)器中任何DML命令的效果以及觸發(fā)語句本身都將回滾。