能不能忽略触发器中的错误?
我的情况是这样的: 当向A表插入数据时,需要向某用户发送信息通知,由于插入数据方是第三方软件做的,我控件不了,所以我在A表加个触发器来实现,现在问题是发送信息这里的错误是可以忽略的,就是说假如发送失败不影响数据的插入,请问我在触发器里如何忽略错误,让事务继续执行.
[解决办法]
再试试这个:
--先保存一个事务点
SAVEPOINT xxx
begin try
--或者是调用存储过程,或者就直接写代码
exec 发送信息的存储过程
end try
begin catch
select '执行失败'
--一旦出错,只是回滚到上面的事务点,继续执行
ROLLBACK [WORK] TO SAVEPOINT xxx
end catch
--其他代码