一个过程里有insert 有update ,偶尔出现 插入了没有更新 的情况
begin tran tx
declare @err int
set @err = 0
————————————————插入表1
insert into 表1
……
set @[email protected]+@@error
——————————————如果满足条件则更新表2
if (条件1)
begin
update 表2
set @[email protected]+@@error
end
if (条件2)
begin
update 表2
set @[email protected]+@@error
end
……
IF @err <> 0
rollback tran tx
else
commit tran tx
代码就是这样,
------解决方案--------------------
set xact_abort on
或 select @[email protected]+@@error