一、事務和隔離級別
事務的概念:事務是把對資料庫的一系列操作都看做一個整體,要么全部成功,要么全部失敗,利用事務我們可以保證資料庫的完整性,事務具有原子性,
隔離級別:隔離級別定義了事務與事務之間的隔離距離,

臟讀(dirty read):當一個事務讀取另一個事務未提交的修改時,產生臟讀,
不可重復讀(nonrepeated read):同一查詢在同一事務中多次進行,由于其他事務提交所做的修改,導致每次回傳的結果不同,此時發生不可重復讀,
幻讀(phantom read):同一查詢在同一事務中多次進行,由于其他事務提交所做的新增或洗掉操作,導致每次得到的不同的結果集,此時發生幻讀,
不可重復讀側重于修改,幻讀側重于新增或者洗掉,解決不可重復讀只需要鎖住滿足條件的行,解決幻讀需要鎖表,
二、Oracle的事務隔離級別有兩種
- READ COMMITTED :讀已提交
- SERIALIZABLE:串行讀取
Oracle默認隔離級別為:讀已提交(READ COMMITTED)
三、MySQL的事務隔離級別有四種
- 讀未提交 (Read uncommitted)
- 讀已提交 (Read committed)
- 可重復讀 (Repeated read)
- 可串行化 (Serializable)
MySQL默認隔離級別為:可重復讀 (Repeated read)
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/119285.html
標籤:MySQL
上一篇:Mysql—常見查詢命令
