事物中的ACID四性
來源:懂視網
責編:小采
時間:2020-11-09 14:32:06
事物中的ACID四性
事物中的ACID四性:事務的四大屬性ACID即事務的 原子性(Atomicity)、一致性(Consistency)、隔離性 (Isolation)、持久性(Durability).。 1,最容易困惑的是原子性和一致性,先談這倆: 原子性:事務的原子性指的是,事務中包含的程序作為數據庫的邏輯工作單位,它所做的
導讀事物中的ACID四性:事務的四大屬性ACID即事務的 原子性(Atomicity)、一致性(Consistency)、隔離性 (Isolation)、持久性(Durability).。 1,最容易困惑的是原子性和一致性,先談這倆: 原子性:事務的原子性指的是,事務中包含的程序作為數據庫的邏輯工作單位,它所做的

事務的四大屬性ACID即事務的 原子性(Atomicity)、一致性(Consistency)、隔離性 (Isolation)、持久性(Durability).。 1,最容易困惑的是原子性和一致性,先談這倆: 原子性:事務的原子性指的是,事務中包含的程序作為數據庫的邏輯工作單位,它所做的
事務的四大屬性ACID即事務的原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability).。
1,最容易困惑的是原子性和一致性,先談這倆:
原子性:事務的原子性指的是,事務中包含的程序作為數據庫的邏輯工作單位,它所做的對數據修改操作要么全部執行,要么完全不執行。
一致性:
事務的一致性指的是在一個事務執行之前和執行之后數據庫都必須處于一致性狀態。這種特性稱為事務的一致性。假如數據庫的狀態滿足所有的完整性約束,就說該數據庫是一致的。
有朋友會問,那我保證了原子性,不就可以保證一致了么?這里的關鍵區別在于,事務的操作邊界定義。對于一直事務里有哪些操作,這個是自定義的,而一致性是針對業務邏輯本身而言的。比如你定義一個事務,里面的操作是A,B,C三步,系統原子性能保證的是這三步要么都執行,要么都不執行,不可拆分。但是有可能你這三部破壞了數據的一致性,比如你定義了從A賬戶劃撥200塊給B賬戶。如果你的事務里只包含從A賬戶扣款,而不包含B賬戶加錢。那么系統保證原子性后,能保證要么從A賬戶都扣款成功,要么都不成功,不會出現扣了一半款之類的異常情況。但是沒辦法保證B賬戶加錢了。所以A賬戶扣款,B賬號加錢,這是一個連續的動作,業務邏輯上要保證一致性,所以必須把兩個步驟放在一個事務里,這樣才能保證一致性。
換而言之,原子性是系統能夠提供的功能,而一致性是根據業務邏輯,有用戶自定義事務的邊界來保證的。兩者缺一不可。
2,隔離性
事務的隔離性是多個用戶并發訪問數據庫時,數據庫為每一個用戶開啟的事務,不能被其他事務的操作數據所干擾,多個并發事務之間要相互隔離。
3,持久性
持久性是指一個事務一旦被提交,它對數據庫中數據的改變就是永久性的,接下來即使數據庫發生故障也不應該對其有任何影響。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
事物中的ACID四性
事物中的ACID四性:事務的四大屬性ACID即事務的 原子性(Atomicity)、一致性(Consistency)、隔離性 (Isolation)、持久性(Durability).。 1,最容易困惑的是原子性和一致性,先談這倆: 原子性:事務的原子性指的是,事務中包含的程序作為數據庫的邏輯工作單位,它所做的