資料庫事務和隔離級別
阿新 • • 發佈:2019-02-06
資料庫事物是指單個邏輯工作單元的一系列操作,要麼完全執行,要麼完全不執行。事物隔離保證了在併發操作過程中互相
干擾,同時,事物提供了從錯誤中恢復的方法。
事物有四個特性:原子性、一致性、隔離性、永續性。
髒讀:指一個事物A讀取到另一個事物B尚未提交的資料。若事物B回退,則A讀取了無效資料。
幻讀:事物A查詢記錄後,事物B插入或刪除了記錄,事物A再次查詢,發現兩次查詢結果不一致。
不可重複讀:事物A查詢了一條記錄後,事物B將此記錄修改了,事物A無法再次讀取上一次讀取的記錄。
資料庫事物的四個隔離級別:Read uncommitted、Read Committed、Repeatable Read、serializable。
四個隔離級別可以解決的問題如下表:
√: 可能出現 ×: 不會出現
髒讀 不可重複讀 幻讀
Read uncommitted √ √ √
Read committed × √ √
Repeatable read × × √
Serializable × × ×