SQLSERVER嵌套事务

本文详细介绍了如何正确处理嵌套事务以避免常见的错误提示,如“EXECUTE后的事务计数指示BEGIN和COMMIT语句的数目不匹配”。通过具体代码示例展示了如何使用BEGIN TRAN, SAVE TRAN, ROLLBACK TRAN 和 COMMIT TRAN等SQL语句来实现可靠的嵌套事务管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

嵌套事务很容易出现“EXECUTE 后的事务计数指示 BEGIN 和 COMMIT 语句的数目不匹配”的错误。

为了解决这个问题我查找了很多资料,但都含糊不清,甚至莫名其妙。

最后综合微软官方的解释和网上的资料,终于找到了解决办法,主要是对于封装好的内部事务,可以完美实现多嵌套,不会影响任何外部事务。

内部事务代码举例如下:

BEGIN TRAN

SAVE TRAN s

....

--如果出错

BEGIN

  ROLLBACK TRAN S

  COMMIT TRAN

RETURN 0

END

....

COMMIT TRAN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值