1. 程式人生 > >數據庫中的事物

數據庫中的事物

數據庫 事務

一、什麽是事物

訪問並可能更新數據庫中各種數據項的一個程序執行單元

二、事物的作用

用於保證數據的一致性

三、事物的四大特性

原子性:事物中的一系列步驟要麽都執行,要麽都不執行

一致性:事物執行前後,數據庫中的數據始終保持一致

隔離性:多個事物同時訪問相同的數據時,一個事物對另外一個事物的影響

持久性:當事物提交或者回滾時,對數據的影響是永久的,任何設備故障或斷電等,都不會影響數據的保存

四、mysql中的事物

1. read uncommit

可以在一個事物中讀取另一個事物還未提交的數據,會產生臟讀

2. read commit(不可重復讀)

在一個事物中不能讀取另一個事物還未提交的數據,有可能兩次讀到不同的數據,因此成為不可重復讀

3. reapeatable read(可重復讀)

在一個事物中,即使另一個事物對數據進行了修改並提交了,本次事物依然看不到數據的變化,除非本次事物提交,開啟一個新的事物

4. Serializable(序列化訪問)

當數據庫在一個事物當中的時候,其它事物對數據庫的操作都無法進行,必須等事物提交或者回滾之後,其它事物才可以正常執行

五、orcale中的事物

1. read committed

在一個事物中不能讀取另一個事物還未提交的數據,有可能兩次讀到不同的數據,因此成為不可重復讀(和mysql一樣)

2. Serializable

它的作用僅僅做到了可重復讀而已,等同於mysql中的第三個級別


數據庫中的事物