事務的基本特性: 事務有4個非常重要的特性 (ACID) Atomicity(原子性) 事務是一個不可分割的整體,所有操作要麼全做,要麼全不做;只要事務中有一個操作出錯,回滾到事務開始前的狀態的話,那麼之前已經執行的所有操作都是無效的,都應該回滾到開始前的狀態。 Consistency(一致性) 事 ...
事務的基本特性:
事務有4個非常重要的特性 --- (ACID)
Atomicity(原子性)
事務是一個不可分割的整體,所有操作要麼全做,要麼全不做;只要事務中有一個操作出錯,回滾到事務開始前的狀態的話,那麼之前已經執行的所有操作都是無效的,都應該回滾到開始前的狀態。
Consistency(一致性)
事務執行前後,數據從一個狀態到另一個狀態必須是一致的,比如A向B轉賬(A、B的總金額就是一個一致性狀態),不可能出現A扣了錢,B卻沒收到的情況發生。
Isolation(隔離性)
多個併發事務之間相互隔離,不能互相干擾。關於事務的隔離性,可能不是特別好理解,這裡的併發事務是指兩個事務操作了同一份數據的情況;而對於併發事務操作同一份數據的隔離性問題,則是要求不能出現臟讀、幻讀的情況,即事務A不能讀取事務B還沒有提交的數據,或者在事務A讀取數據進行更新操作時,不允許事務B率先更新掉這條數據。而為瞭解決這個問題,常用的手段就是加鎖了,對於資料庫來說就是通過資料庫的相關鎖機制來保證。
Durablity(持久性)
事務完成後,對資料庫的更改是永久保存的,不能回滾。