91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Mysql中的幻讀和不可重復讀的區別

發布時間:2020-06-09 11:50:44 來源:億速云 閱讀:678 作者:Leah 欄目:MySQL數據庫

Mysql中的幻讀和不可重復讀的區別是什么?這個問題可能是我們日常學習或工作經常見到的。通過這個問題,希望你能了解幻讀和不可重復讀的區別

不可重復讀:同樣的條件下,讀取過的數據,當我們再次讀取時值發生了變化。

幻讀:同樣的條件下,第1次和第2次讀出來的記錄數不一樣。

具體分析:

1、不可重復讀

同樣的條件下,讀取過的數據,當我們再次讀取時值發生了變化。

例子:

在事務1中,A讀取了自己的工資為1000,但是此時事務1的操作還并沒有完成 ,后面還有1次相同的讀取操作。

con1 = getConnection();
select salary from employee where employeeName ="A";

在事務2中,這時財務人員修改了A的工資為2000,并提交了事務。

con2 = getConnection();    
update employee set salary = 2000 where employeeName = "A";    
con2.commit();

在事務1中,A再次讀取自己的工資時,工資變為了2000 。

select salary from employee where employeeName ="A";

在一個事務中前后兩次讀取的結果并不致,導致了不可重復讀。

2、幻讀

同樣的條件下,第1次和第2次讀出來的記錄數不一樣。

例子:

目前工資為1000的員工有5人。

事務1,讀取所有工資為1000的員工,共讀取10條記錄 。

con1 = getConnection();    
Select * from employee where salary =1000;

這時另一個事務向employee表插入了一條員工記錄,工資也為1000

con2 = getConnection();    
Insert into employee(employeeName,salary) values("B",1000);    
con2.commit();

事務1再次讀取所有工資為1000的員工,共讀取到了6條記錄,這就產生了幻讀。

//con1    
select * from employee where salary =1000;

看完上述內容,你們對Mysql中的幻讀和不可重復讀的區別有進一步的了解嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

玛纳斯县| 明水县| 沽源县| 五家渠市| 北安市| 诸暨市| 福鼎市| 仪征市| 汪清县| 潞城市| 眉山市| 休宁县| 安康市| 教育| 江山市| 界首市| 灵川县| 定日县| 满洲里市| 沾化县| 嘉祥县| 固始县| 监利县| 桓台县| 木兰县| 巴里| 福安市| 南投县| 麻江县| 巧家县| 城口县| 宣恩县| 无为县| 金沙县| 瑞金市| 育儿| 闽清县| 西充县| 岳池县| 沾化县| 内黄县|