1.概念
事務是指邏輯上的一組操作,組成該操作的各個單元,要麼全部執行成功,要麼全部執行失敗; 只有全部執行成功後,事務才會提交, 若有乙個單元執行失敗,那麼所有資料都會通過回滾自動恢復.(**回滾機制:**當事務內部有乙個操作執行失敗後,那麼將會撤銷所有已完成的更新操作)
2.事務的四大特性
(1)原子性–即不可分割性,事務裡的操作要麼全執行,要麼都不執行.
(2)一致性(可串性)–事務執行前後,資料始終處於合法狀態,例如轉賬操作:執行前後,雙方的金額之和要保持一致.
(3)永續性–事務一旦執行成功提交,對資料的修改是永久性的,即使提交後出現任何故障都不會影響事務的正確性.
(4)隔離性–多個事務併發執行時,各個事務內部操作互相隔離,互不影響.
隔離性就是解決併發帶來的一系列問題;
①髒讀;可以讀取到未提交的資料,有可能是錯誤資料;避免髒讀,可以在給寫操作"加鎖",提高隔離性,降低併發性;
②不可重複讀:乙個事務內,兩次讀到的資料不一樣,:給讀操作"加鎖",即在讀取資料的時候不允許修改;
③幻讀: 多次查詢返回的結果集不同,:解決幻讀問題就進一步提公升隔離性,即完全"序列化",事務乙個接著乙個執行,此時沒有併發執行.
隔離級別:
read uncommitted:允許讀取未提交的資料,並行最大,隔離最低,有髒讀問題;
read commit:不允許讀未提交的資料,避免髒讀,存在不可重複讀問題,隔離性提高;
repeatable:避免不可重複度,存在幻讀;
serializable:嚴格序列執行.
資料庫事務
事件是訪問並可能更新各種資料項的乙個程式執行單元。事件由事務開始與事務結束之間執行的全體操作組成。為了保證資料完整性,資料庫系統需要維護事務的以下性質 原子性 atomicity 事務中的操作要麼全部成功,要麼全部失敗。一致性 consistency 事務執行前後要保持資料庫的一致性。隔離性 iso...
資料庫 事務
資料庫事務 database transaction 是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向資料的資源。通過將一組相關操作組合為乙個要麼全部成功要麼全部失敗的單元,可以簡化錯誤恢復並使應用程式更加可靠。乙個邏輯工作單元要成...
資料庫事務
這段時間面試,由於基礎不是特別好,遇到一些要筆試的公司。就會表示出來 今天有人問我,資料庫事務 是什麼。我只感覺十分熟悉。但是又說不出所以然。回來找了一下,現在整理記錄 1 定義 資料庫事務 database transaction 是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務...