亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

如何理解 MySQL 事務中的不可重復讀和幻讀問題?

瀏覽:134日期:2022-06-20 14:25:22

問題描述

如何理解 MySQL 事務中的不可重復讀和幻讀問題? 或者說 READ COMMIT 和 REPEAT COMMIT 兩種隔離性的區(qū)別在哪?

問題解答

回答1:

剛好學習一下這個,我就粗淺的來說說我的想法:Read Committed(不可重復讀):假設事務1讀取了一條記錄(select user_name from user where user_id = 1),得到user_name = ’456’,事務1暫時沒提交。事務2更新了一條記錄(update user set user_name = ’123’ where user_id = 1),事務2提交。此時事務1再次select user_name from user where user_id = 1得到了user_name = ’123’,這樣就導致事務1在讀取同一行數(shù)據(jù)卻得到不同的user_name。這就是所謂的不可以重復讀

Repeatable Read(可重復讀,會產(chǎn)生幻讀):這個跟不可重復讀相反,當事務1查詢到user_name=’456’時,事務2將user_name更新成’123’并提交,事務1再次查詢還是會發(fā)現(xiàn)user_name=’456’,這樣保證了可重復讀。幻讀的話就是當事務2插入一條新的數(shù)據(jù)id為2并提交,事務1由于可重復讀的性質,只能在表中查到id為1的數(shù)據(jù),如果此時事務1插入id為2的數(shù)據(jù)則會產(chǎn)生錯誤,因為此時表中已經(jīng)有了id為2的數(shù)據(jù),但是事務1只看到了id為1的數(shù)據(jù)。

相關文章:
主站蜘蛛池模板: 久久久久久久97 | 免费看黄的网址 | 成人自拍视频在线 | 欧美骚b | 有人有片的观看免费视频 | 国产福利视频在线播放 | 超级乱淫片67194免费看 | 制服丝袜第一页在线 | 在线免费视频一区 | 99久久精品国产免费 | 亚洲色图吧 | 任我鲁这里有精品视频在线播 | 国产在线视频一区 | 国产成人精品精品欧美 | 一级做a爱过程免费视频麻豆 | 国产97公开成人免费视频 | 亚洲国产成人最新精品资源 | 日本一级毛片私人影院 | 黄色在线观看视频免费 | 中文字幕日韩欧美一区二区三区 | 国产98在线传媒在线视频 | 国产特级毛片aaaaaa毛片 | 精品湿| 一区二区精品在线 | 国产亚洲精品精品国产亚洲综合 | 精品一区二区三区的国产在线观看 | 理论片 国产台湾在线 | 欧美视频黑鬼大战白妞 | 中文字幕在线永久视频 | 干中文字幕| aaa在线观看高清免费 | 九九免费观看全部免费视频 | 999精品视频在线 | 免费污片在线观看 | 欧美国产中文 | 国产乱码精品一区二区三 | 一区二区视频在线 | 成人男女啪啪免费观看网站 | 国产精品嫩草影院视频 | 欧美一级性生活视频 | 在线看片黄 |