Begin Rollback

Begin Rollback

Begin Rollback/Commit是可以嵌套对吧?

事务A的begin开始然后没有到结束就另起一个begin开始事务b,然后出现的第一个结束是对应事务B,第二个是事务A?

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
好帮手慕小班 2020-09-26 18:44:28

同学你好,同学说的课程中的事务,是说如下的事务A和事务B吧,如果是,他们并不是嵌套事务,而是两个分别独立的事务。

http://img1.sycdn.imooc.com//climg/5f6f19ea0901bbc709350555.jpg

比如:有一个A方法去调用B方法,如果B方法有事务,我们就再给A套一个事务,如果B没有事务,则我们给A加一个事务。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

好帮手慕小班 2020-09-26 15:18:38

同学你好,1、事务是可以嵌套的。

    2、  对于嵌套事务:

    嵌套是子事务在父事务中执行,子事务是父事务的一部分,在进入子事务之前,父事务建立一个回滚点,叫save point,然后执行子事务,这个子事务的执行也算是父事务的一部分,然后子事务执行结束,父事务继续执行。

    如果子事务回滚,父事务会回滚到进入子事务前建立的save point,然后尝试其他的事务或者其他的业务逻辑,父事务之前的操作不会受到影响,更不会自动回滚。
    如果父事务回滚,子事务也会跟着回滚。因为父事务结束之前,子事务是不会提交的,我们说子事务是父事务的一部分,正是这个道理。

    事务的提交,子事务作为父事务的一部分,由父事务统一提交。

如果我的回答解决了你的疑惑,请采纳,祝学习愉快~

  • 提问者 mixiaofan #1
    那像课程里说的这种属于嵌套吗?也是begin >begin >c/r >c/r ;
    2020-09-26 16:10:19
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师