執行一條命令,或者多條命令,要麼全部成功,要麼全部失敗,不存在中間狀態
執行一條命令,或者多條命令,執行前後整體保持一致(比如:a有餘額100元,b有餘額100元,a給b轉賬50元,轉賬後a有餘額50元,b有餘額150元,a+b前後總額分別都是200元)
隔離性是指事務和事務之間操作具有隔離性,即是乙個事務進行操作,不應該受其他事務的影響,此處會因為隔離性不同,造成不同的問題,後面會講解
永續性是指在操作命令後,會把在記憶體中執行結果,持久化到硬碟上,防止因為宕機或者重啟丟失資料
##2.隔離性導致出現的問題
前面說過了事務的特性,其中有乙個是隔離性,是為了保證事務之間互不影響的乙個重要的特性,因為資料設定的隔離性不同,會出現不同的現象,總共分為以下三種現象:髒讀、不可重複讀、幻讀
乙個事務讀取到了另乙個事務沒有提交的資料
###2.2不可重複讀
乙個a事務先讀取了資料庫的資料,這個時候另乙個b事務進行了更新操作並提交了,a事務又讀取了一遍,發現兩次讀取的資料不同
乙個a事務讀取了資料庫的資料,這個時候另乙個b事務進行了插入操作並提交了,a事務又讀取了一遍,發現兩次讀取資料總行數不一致
乙個事務可以讀取到另乙個事務沒有提交的資料,此時會造成髒讀、不可重複讀、幻讀
乙個事務讀取到了另乙個事務提交的資料,此時會造成不可重複度、幻讀,解決了髒讀
乙個事務可以重複讀到相同的資料,無論其他事務是否對資料有沒有做修改,此時會造成幻讀,解決了髒讀、不可重複讀
該情況下解決了髒讀、不可重複讀、幻讀
讀未提交》讀已提交》可重複讀》序列化
MySql 事務介紹
事務是由一組sql 語句組成的邏輯處理單元。事務的四個屬性 原子性 atomicity 是指事務是乙個不可再分割的工作單位,對事務中的資料的操作要麼都完成要麼都不完成。一致性 consistent 在事務開始和完成時,資料都必須保持一致性。這意味著所有相關的資料規則都必須應用於事務的修改,以保持資料...
MySQL事務介紹
1 事務的概念 在多個操作的sql語句當中,要麼同時成功執行,要麼同時失敗執行。2 操作步驟 a.開啟事務 start transaction b.回滾 出問題了,需要回到開啟事務之前 rollback c.提交 正常執行,將改變的資料提交結束事務 commit 3 檢視和修改事務的提交方式 a.檢...
了解mysql 事務介紹
目錄 事務由單獨單元的乙個或多個sql語句組成,在這個單元中,每乙個mysql語句是相互依賴的 由於整個單獨單元作為不可分割的整體,那麼如果單元中某條sql語句一旦執行失敗或產生失敗,整個單元就會回滾。要麼全部成功,要麼全部失敗。在mysql中用的最多的儲存引擎有 innodb,myisam,mem...