我现在A函数开启事务,然后调用B函数,B函数中也开启了事务

我现在A函数开启事务,然后调用B函数,B函数中也开启了事务

大家好,又见面了,我是全栈君。

有一点要知道,就是MYSQL不支持事务嵌套。
所以PHP再包装,也是一个事务

laravel的事务嵌套,就是一个栈。
事务A开启事务(真实开启)
事务B开启事务(只是标记,并非真实开启了事务)
事务B提交事务(只是标记,并非真的提交了事务)
事务A提交事务(真实提交)

事务A开启事务(真实开启)
事务B开启事务(只是标记,并非真实开启了事务)
事务B提交事务(只是标记,并非真的提交了事务)
事务A回滚事务(真实回滚)

从这个栈就能看出来,只有第一次开启事务,和第一次回滚事务,和最后一次提交事务,是真实操作了数据库,其他事务操作都是假的,只是做了标记。

我现在A函数开启事务,然后调用B函数,B函数中也开启了事务

https://github.com/Zhucola/yii_core_debug/blob/master/%5B%E6%95%B0%E6%8D%AE%E5%BA%93%E7%B3%BB%E5%88%97%E4%B8%89%5D%E4%BA%8B%E5%8A%A1%E6%BA%90%E7%A0%81%E5%88%86%E6%9E%90.md

参考:https://learnku.com/articles/15618/transactions-implementation-of-nested-transaction-for-laravel

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112276.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pycharm不会自动补全括号_pycharm自动提示

    pycharm不会自动补全括号_pycharm自动提示安装pycharm后,输入代码后,没有补全提示首先检查是否关闭了代码提示,如下图,将红框中“PowerSaveMode”前的勾去掉第二步,如果在输入某些代码时还是没有补全提醒,可能是配置好python环境则点击file->settings->projectInterpreter,如下图选择安装的python输入代码就会有提示了…

    2022年8月25日
  • web服务器监控工具[通俗易懂]

    web服务器监控工具[通俗易懂]监控你的WEB服务器或者WEB主机运行是否正常与健康是非常重要的。你要确保用户始终可以打开你的网站并且网速不慢。服务器监控工具允许你收集和分析有关你的Web服务器的数据。1.PerformanceCo-PilotPerformanceCo-Pilot,简称PCP,是一个系统性能和分析框架。它从多个主机整理数据并实时的分析,帮你识别不正常的表现模式。它也提供A

    2022年6月12日
  • c++语言switch用法举例_switch语句特点

    c++语言switch用法举例_switch语句特点C语言/C++【switch语句详解(用法、规则、流程图、实例)】

    2022年10月9日
  • 性能测试相关书籍

    性能测试相关书籍

    2021年8月8日
  • android移动点餐系统内容和要求,基于Android云计算的移动点餐系统

    android移动点餐系统内容和要求,基于Android云计算的移动点餐系统摘要:系统发挥Android富有创造力和想象力的云应用开发,实现一套Android客户端软件和完善的后台服务功能来完成点餐功能。该系统主要包括后台数据库服务器、WEB服务器、无线网络、Android前端等部分。客户端Android系统智能手机具有前端处理与计算能力,而且通过无线网络访问WEB服务器,如果需要数据访问,则访问后台数据库。介绍了系统架构的设计与搭建、技术选型、后台数据库的…

    2022年6月20日
  • 如何制作一个简单的HTML登录页面(附代码)[通俗易懂]

    如何制作一个简单的HTML登录页面(附代码)[通俗易懂]几乎每个网站都会有登录页面,那你知道如何写HTML登录页面吗?这篇文章就和大家分享一个HTML简单登录界面的代码,有一定的参考价值,感兴趣的朋友可以看看。实例:制作一个HTML登录页面,包含邮箱,登录密码,立即注册,忘记密码等,代码如下:HTML部分:<divclass=”dowebok”><divclass=”logo”></div><divclass=”form-item”><inputid=”username”t

    2022年6月13日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号