java - mybatis 插入一条数据时,数据库没能找到这条数据,但是程序却可以查询出这条数据
PHP中文网
PHP中文网 2017-04-18 09:52:06
0
6
433

用mybatis向mysql数据库插入一条数据后,然后查询出来。数据库里没有这条数据,但是程序通过查询语句却能查到这条数据

程序显示结果:

但是数据库就没能找到这条数据

PHP中文网
PHP中文网

认证高级PHP讲师

全部回覆(6)
大家讲道理

壓根就不是緩存,既不是資料庫,也不是mybatis。

資料庫很好理解,你沒有commit的資料只有在你目前的transaction中可以查到,其他客戶端是查不到的,如果查到了豈不是髒讀了嗎?

mybatis的快取很簡單,預設insert,delete,update都會清空緩存,只有在select的時候才會在快取裡放東西。

所以答案很明顯了,就是你auto commit關閉的問題,沒有把更新操作commit到資料庫,所以只能在你自己這裡查到,你開個客戶端卻查不到

小葫芦

你的圖片:

會不會是你事務的原因?因為你插入了以後立刻就查詢了,事務還沒提交?

迷茫

程式可能使用了快取機制,你插入的資料可能在快取中,還沒到資料庫,你百度搜尋資料庫快取

黄舟

我覺得是沒有commit進去

阿神

只能說明,事務沒提交罷了

左手右手慢动作

妥妥的事務問題。哥們事務提交了就能看到了。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!