資料庫事務

2021-08-27 08:59:22 字數 788 閱讀 9687

1.1 原子性(atomicity)

事務中的全部操作在資料庫中是不可分割的,要麼全部完成,要麼均不執行。

1.2 一致性(consistency)

幾個並行執行的事務,器質性結果必須與按某一順序序列執行的結果一致。

1.3 隔離性(isolation)

事務的執行不受其他事務的干擾,事務執行的中間結果對其他事務必須是透明的。

1.4 永續性(durability)

對於任意已提交的事務,系統必須保證該事務對資料庫的改變不被丟失,即使資料庫出現故障。

多個事務對資料庫的併發操作,可能會破壞事務的隔離性與一致性。

事務併發問題主要包括三類:髒讀、不可重複讀、丟失修改。

(1)髒讀(dirty read)

a事務讀取了b事務未提交的資料。

(2)不可重複讀(non-repeatable read)

讀取了已提交的事務。事務a讀取資料後,事務執行更新操作,使a無法再現前一次讀取結果。

(3)丟失修改(lost update)

兩個事務a和b,讀入同一資料並修改,b提交的結果平破壞了a提交的結果,導致a的修改丟失。

為了防止併發問題的發生,標準sql定義了四個隔離級別,級別由低到高分別為:讀取未提交、讀取

已提交、可重複度、序列化。隔離級別越高,系統開銷越大,**執行效率越低。

資料庫事務

事件是訪問並可能更新各種資料項的乙個程式執行單元。事件由事務開始與事務結束之間執行的全體操作組成。為了保證資料完整性,資料庫系統需要維護事務的以下性質 原子性 atomicity 事務中的操作要麼全部成功,要麼全部失敗。一致性 consistency 事務執行前後要保持資料庫的一致性。隔離性 iso...

資料庫 事務

資料庫事務 database transaction 是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向資料的資源。通過將一組相關操作組合為乙個要麼全部成功要麼全部失敗的單元,可以簡化錯誤恢復並使應用程式更加可靠。乙個邏輯工作單元要成...

資料庫事務

這段時間面試,由於基礎不是特別好,遇到一些要筆試的公司。就會表示出來 今天有人問我,資料庫事務 是什麼。我只感覺十分熟悉。但是又說不出所以然。回來找了一下,現在整理記錄 1 定義 資料庫事務 database transaction 是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務...