資料庫事務的四個特徵是什麼?

青灯夜游
發布: 2020-10-19 11:11:00
原創
24276 人瀏覽過

資料庫事務的四個特徵是:1、原子性,事務是資料庫的邏輯工作單位,事務中的操作要麼全做,要麼不做;2、一致性,一個事務執行之前和執行之後都必須處於一致性狀態;3、隔離性;4、持久性, 一個事務一旦提交,他對資料庫中的資料的改變應該是永久性的。

資料庫事務的四個特徵是什麼?

(推薦教學:mysql視訊教學

如果一個資料庫聲稱支援交易的操作,那麼該資料庫必須要具備以下四個特性:

1、原子性(Atomicity)

原子性是指事務包含的所有操作要麼全部成功,要麼全部失敗回滾,這和前面兩篇部落格介紹事務的功能是一樣的概念,因此事務的操作如果成功就必須要完全應用到資料庫,如果操作失敗則不能對資料庫有任何影響。

2、一致性(Consistency)

一致性是指交易必須讓資料庫從一個一致性狀態轉換到另一個一致性狀態,也就是說一個事務執行之前和執行之後都必須處於一致性狀態。

拿轉賬來說,假設用戶A和用戶B兩者的錢加起來一共是5000,那麼不管A和B之間如何轉賬,轉幾次賬,事務結束後兩個用戶的錢相加起來應該還要是5000,這就是事務的一致性。

3、隔離性(Isolation)

隔離性是當多個使用者並發存取資料庫時,例如操作同一張表時,資料庫為每個使用者開啟的事務,不能被其他事務的操作所干擾,多個並發事務之間要相互隔離。

即要達到這麼一種效果:對於任意兩個並發的事務T1和T2,在事務T1看來,T2要么在T1開始之前就已經結束,要么在T1結束之後才開始,這樣每個事務都感覺不到有其他事務在並發地執行。

關於交易的隔離性資料庫提供了多種隔離級別,稍後會介紹到。

4、持久性(Durability)

持久性是指一個交易一旦被提交了,那麼對資料庫中的資料的改變就是永久性的,即便是在資料庫系統遇到故障的情況下也不會遺失提交交易的操作。

例如我們在使用JDBC操作資料庫時,在提交事務方法後,提示使用者事務操作完成,當我們程式執行完成直到看到提示後,就可以認定事務以及正確提交,即使這時候資料庫出現了問題,也必須要將我們的事務完全執行完成,否則就會造成我們看到提示事務處理完畢,但是資料庫因為故障而沒有執行事務的重大錯誤。

以上是資料庫事務的四個特徵是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板