DECLARE @TranStarted bit
SET @TranStarted = 0
IF( @@TRANCOUNT = 0 ) -- 用于嵌套
BEGIN
BEGIN TRANSACTION
SET @TranStarted = 1
END
ELSE
SET @TranStarted = 0
.....
IF( @TranStarted = 1 )
BEGIN
SET @TranStarted = 0
COMMIT TRANSACTION
END
以上代码用于解决存储过程间嵌套调用时的全局原子性问题!
本文介绍了一种在SQL存储过程中处理事务嵌套的方法,通过设置标志位来判断是否需要开始新的事务,确保了在不同层级的存储过程调用中事务的一致性和原子性。
199

被折叠的 条评论
为什么被折叠?



