[英]Raising errors in After Triggers Sql Server 2005
如果我在Sql Server 2005中的AFTER UPDATE触发器中引发错误,那么是否会导致导致触发器的更新被回滚,即使该语句未在事务中执行?
谢谢。
不,你必须通过调用ROLLBACK TRAN
来回滚事务:
CREATE TRIGGER trg_au_table
ON dbo.table
AFTER UPDATE
AS
BEGIN
ROLLBACK TRAN
END
GO
此示例将阻止更新任何记录。
这个:
CREATE TRIGGER trg_au_table
ON dbo.table
AFTER UPDATE
AS
BEGIN
RAISERROR('This is a test', 16, 1)
END
GO
只会引发错误,但会在表格中进行更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.