什麼是事務?
事務是由一步或幾步資料庫操作序列組成邏輯執行單元,這系列操作要麼全部執行,要麼全部放棄執行。程式和事務是兩個不同的概念。一般而言:一段程式中可能包含多個事務。(說白了就是幾步的資料庫操作而構成的邏輯執行單元)
事務具有四個特性:原子性(atomicity)、一致性(consistency)、隔離性(isolation)和持續性(durability)。這四個特性也簡稱acid性。
(1)原子性:事務是應用中最小的執行單位,就如原子是自然界最小顆粒,具有不可再分的特徵一樣。事務是應用中不可再分的最小邏輯執行體。(最小了,不可再分了)
(2)一致性:事務執行的結果,必須使資料庫從乙個一致性狀態,變到另乙個一致性狀態。當資料庫中只包含事務成功提交的結果時,資料庫處於一致性狀態。一致性是通過原子性來保證的。(說罷了就是白狗變成了黑狗,不能出現斑點狗!)
(3)隔離性:各個事務的執行互不干擾,任意乙個事務的內部操作對其他併發的事務,都是隔離的。也就是說:併發執行的事務之間不能看到對方的中間狀態,併發執行的事務之間不能相互影響。(說白了,就是你做你的,我做我的!)
(4)持續性:持續性也稱為永續性,指事務一旦提交,對資料所做的任何改變,都要記錄到永久儲存器中,通常是儲存進物理資料庫。(說白了就是一條道跑到黑)
mysql如何支援事務?
mysql的事務處理主要有兩種方法
1.用begin,rollback,commit來實現
begin開始乙個事務
rollback事務回滾
commit 事務確認
2.直接用set來改變mysql的自動提交模式
mysql預設是自動提交的,也就是你提交乙個query,就直接執行!可以通過
set autocommit = 0 禁止自動提交
set autocommit = 1 開啟自動提交
來實現事務的處理
什麼是mysql事務隔離級別
資料庫隔離級別有四種,分別是 1 read uncommitted 未提交讀 2 read committed 提交讀 3 repeated read 可重複讀 4 serializable 序列讀。資料庫隔離級別有四種,如下所示 1 未提交讀 read uncommitted 允許髒讀,也就是可能...
什麼是事務
一 什麼是事務 事務是應用程式中一系列嚴密的操作,所有操作必須成功完成,否則在每個操作中所作的所有更改都會被撤消。也就是事務具有原子性,乙個事務中的一系列的操作要麼全部成功,要麼乙個都不做。事務的結束有兩種,當事務中的所以步驟全部成功執行時,事務提交。如果其中乙個步驟失敗,將發生回滾操作,撤消撤消之...
什麼是事務
所謂事務,就是乙個操作序列,這些操作要麼都執行,要麼都不執行,它是乙個不可分割的工作單位。開啟用begin,關閉用commit 事務的四大特性 acid 1.原子性a 做一件事情要麼成功要麼不成功 2.一致性c 你中間除了問題也不會出現這個資料丟了的情況 3.隔離性i 兩個sql語句之間不會相互影響...