0
我有扳机TSQL,我希望做两件事情:TSQL:触发/ ROLLBACK TRANSACTION错误
- 如果“锁定”栏中为TRUE,则应该ROLLBACK TRANSACTION
应该失败优雅而这样做
AFTER UPDATE AS BEGIN IF (SELECT COUNT(*) FROM deleted WHERE Locked = 1)>0 ROLLBACK TRANSACTION END
目前的代码回滚不需要的事务,但是当它返回这个错误:“此次交易结束在触发器中编辑。批处理已中止。”
是否有ROLLBACK TRANSACTION的触发器和正常失败的方法吗?
感谢。
你好彼得, 感谢。你能进一步阐述我将如何执行或不执行更新? 我相对n新闻到SQL,所以我感谢你的帮助。 谢谢! – user1251000 2012-03-08 18:49:39
是的,后触发器只是在操作之后调用,而不是触发器也必须执行操作本身。此链接可能有所帮助:[链接](http://www.mssqltips.com/sqlservertip/1804/using-instead-of-triggers-in-sql-server-for-dml-operations/)。 – 2012-03-08 18:59:18