乙個或一組sql語句組成乙個執行單元,要求同時成功或同時失敗。部分儲存引擎(innodb)可以支援事務功能。
事務的特點(也就是事務的acid屬性):
事務的建立
原始的增刪改查單條語句本身就是乙個事務,叫隱性事務,資料庫會自動建立。顯式事務就需要自行新增事務相關的指令了。
開發過程中,框架會根據**的邏輯自動的生成帶事務指令的sql語句,比如設定自動提交的引數,自動新增開啟事務、回滾事務和提交事務的指令等。
開啟事務的指令中必須存在「set autocommit = 0;」,「start transaction;」則可有可無。
事務隔離性
隔離性引發的問題:
對應問題,資料庫有4種事務隔離級別:
資料庫開發 認識事務
原子性 atomicity 乙個事務是乙個不可分割的工作單位,事務中包括的諸操作要麼都做,要麼都不做。一致性 consistency 事務必須是使資料庫從乙個一致性狀態變到另乙個一致性狀態。與原子性是密切相關的。隔離性 isolation 乙個事務的執行不能被其他事務干擾。即乙個事務內部的操作及使用...
資料庫事務
事件是訪問並可能更新各種資料項的乙個程式執行單元。事件由事務開始與事務結束之間執行的全體操作組成。為了保證資料完整性,資料庫系統需要維護事務的以下性質 原子性 atomicity 事務中的操作要麼全部成功,要麼全部失敗。一致性 consistency 事務執行前後要保持資料庫的一致性。隔離性 iso...
資料庫 事務
資料庫事務 database transaction 是指作為單個邏輯工作單元執行的一系列操作。事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向資料的資源。通過將一組相關操作組合為乙個要麼全部成功要麼全部失敗的單元,可以簡化錯誤恢復並使應用程式更加可靠。乙個邏輯工作單元要成...