淺析MYSQL REPEATABLE-READ隔離級別
REPEATABLE-READ 即可重復讀,set autocommit= 0或者START TRANSACTION狀態(tài)下select表的內容不會改變。這種隔離級別可能導致讀到的東西是已經修改過的。
比如:
回話一中讀取一個字段一行a=1
在回話二里這個字段該行修改a=0,并且提交
回話一中再update這個字段a=0,會發(fā)現(xiàn)受影響行數(shù)是0,這樣就可以根據(jù)受影響行數(shù)是0還是1判斷此次修改是否成功!
這在某些程序里會很有用!
會話1:
mysql> set autocommit=0;
Query OK, 0 rows affected (0.00 sec)
mysql> select * from test.dd where id=1;
+----+------+
| id | aa |
+----+------+
| 1 | 2 |
+----+------+
1 row in set (0.00 sec)
會話2:
mysql> update test.dd set aa=1 where id=1;
Query OK, 1 row affected (0.09 sec)
Rows matched: 1 Changed: 1 Warnings: 0
會話3:
mysql> select * from test.dd where id=1;
+----+------+
| id | aa |
+----+------+
| 1 | 2 |
+----+------+
1 row in set (0.00 sec)
mysql> update test.dd set aa=1 where id=1;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 0
此處的受影響行數(shù)為0,我們可以根據(jù)這個值判斷這次update是否成功,這在需要更改某些行的狀態(tài)位的時候是比較有用的!
相關文章
Mysql中replace與replace into的用法講解
今天小編就為大家分享一篇關于Mysql中replace與replace into的用法講解,小編覺得內容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-03-03Kettle的MySQL數(shù)據(jù)源版本問題及解決
這篇文章主要介紹了Kettle的MySQL數(shù)據(jù)源版本問題及解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10mysql聯(lián)合索引最左匹配原則的底層實現(xiàn)原理解讀
這篇文章主要介紹了mysql聯(lián)合索引最左匹配原則的底層實現(xiàn)原理,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09replace MYSQL字符替換函數(shù)sql語句分享(正則判斷)
最近更新網站發(fā)現(xiàn)一些字段的值不是預期的效果,需要替換下值,通過下面的sql語句,直接執(zhí)行就可以了2012-06-06linux下mysql自動備份數(shù)據(jù)庫與自動刪除臨時文件
mysql自動備份數(shù)據(jù)庫與自動刪除臨時文件,有需要的朋友可以參考下2013-02-02