耶律妙月 2018-10-31 08:45 采纳率: 100%
浏览 7084
已采纳

mybatis事务未提交为什么能查询到insert的数据?

图片说明

如图,insert方法插入一条数据,selALL方法查询数据,我还没有commit,仍然能查询到刚刚insert的数据
请问这其中的原理是什么?事务提交前插入的数据存放在哪?为什么能被select取到?

  • 写回答

2条回答 默认 最新

  • wsl719583022 2018-11-22 07:21
    关注

    在运行的时候,查询和新增是在同一个sqlsession下,而这个sqlsession又处于同一个事务当中,同一个事务,前面做了新增操作是可以查的到数据的,即使没有提交,但是如果你的程序不进行commit的话执行完成后去数据库查是不会有数据的,因为这时候和之前是处于不同的事务环境当中

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵