大侠:
需求如下:
一个主存储过程:Main_Proc,在主存储过程(Main_Proc)中分别调用两个子存储过程:Sub1_Porc和Sub2_Proc。如何做到:在调用两个子存储过程时,这两个数据库事务相互独立,即sub1_proc中出现错误,也不会影响sub2_proc中的操作?
不知可以否?
需求如下:
一个主存储过程:Main_Proc,在主存储过程(Main_Proc)中分别调用两个子存储过程:Sub1_Porc和Sub2_Proc。如何做到:在调用两个子存储过程时,这两个数据库事务相互独立,即sub1_proc中出现错误,也不会影响sub2_proc中的操作?
不知可以否?
你没有用
set xact_abort on 去自动回滚
被调用的存储过程发生严重错误时,调用它的存储过程可以捕获错误,并可以继续执行下去
如果错误比较严重,就算用 set xact_abort on 来自动回滚事务
也无法回滚
as
exec proc_a --如果有錯誤,proc_b 接着执行
exec proc_b
主SP中是否加set xact_abort on?
SP1中是否加set xact_abort on?
SP2中是否加set xact_abort on?排列组合:2*2*2=8种情况,测试一下哪种是你要的.