【发布时间】:2015-05-28 21:20:22
【问题描述】:
考虑一个场景。我有表T1,它在INSERT 操作上创建了触发器。和存储过程如下。
//StoredProcedure.sql
BEGIN TRANSACTION;
...
...
INSERT INTO TABLE T1
/* Trigger will be executed on record insertion in Table T1 */
.....
.....
.....
.....
Consider some error here...
.....
.....
COMMIT TRANSACTION;
.....
.....
ROLLBACK TRANSACTION;
On Error in Stored Procedure 会调用ROLLBACK TRANSACTION,是否会在Trigger 中执行ROLLBACK 操作?
MSSQL and MySQL:考虑到理想情况,Trigger 将执行ROLLBACK 操作,但我希望您对这个问题发表看法。
【问题讨论】:
-
在当前事务中对该点所做的所有数据修改都会回滚,包括触发器所做的任何修改。 Rollback transaction
标签: mysql sql-server stored-procedures triggers