什麼是事務?
事務一般是指資料庫事務,是指作為乙個程式執行單元執行的一系列操作,要麼完全執行,要麼完全不執行。事務就是判斷以結果為導向的標準。
(1)原子性(atomicity)
原子性就是乙個不可分割的工作單位。簡單地說,就是在日常工作中,老闆交給你做一件事情,然後你做到半路做不動了或者說做到最後沒做完,那麼這個老闆就會認為你什麼都沒有做,做一半的東西不算數,因為老闆提前告訴你他只看結果,所以最終沒有看到結果,不算是做了。通俗的說就是要麼全部完成,要麼全部沒完成回到起始的地方。
(2)一致性(consistency)
一致性就是事務必須是使乙個一致性狀態變成另乙個一致性狀態。比如說我們寫乙個電商專案,乙個使用者買商品下單的時候一般都是兩步,一步就是選擇商品下單,第二步就是把商品在資料庫中扣除庫存,如果我們買了十件商品,那麼資料庫中扣除了不是十件商品,或者三件或者四件或者別的,那麼這就不滿足一致性。
(3)隔離性(isolation)
隔離性就是乙個事物的執行不能被另乙個事務干擾。還是說我們的電商,乙個使用者下單之後在減庫存的過程中,另乙個使用者也下單了,他也要減庫存,在這個使用者還沒有減的時候,另乙個使用者給減掉了,那麼庫存沒有了,這就是事務被另乙個事務干擾了。
(4)永續性(durability)
永續性就是乙個事務一旦被提交,它對資料庫中資料的改變就應該是永久性的。就是說我們在執行乙個sql語句之後還沒有被提交,這是系統宕機了,那麼資料並沒有被儲存下來,但是當我們把資料提交之後,存在了檔案中,這時不管怎麼樣我們的資料都不會遭到破壞。
mysql事務四個特性 事務的四個特性
事務的四個特性 1.原子性 atomicity 1.1什麼是原子性 一般來說,原子是指不能分解成小部分的東西。這個詞在計算的不同分支中意味著相似但又微妙不同的東西。例如,在多執行緒程式設計中,如果乙個執行緒執行乙個原子操作,這意味著另乙個執行緒無法看到該操作的一半結果。系統只能處於操作之前或操作之後...
事務 四個特性
事務具有4個特徵,分別是原子性 一致性 隔離性和永續性,簡稱事務的acid特性 一 原子性 atomicity 乙個事務要麼全部提交成功,要麼全部失敗回滾,不能只執行其中的一部分操作,這就是事務的原子性 二 一致性 consistency 事務的執行不能破壞資料庫資料的完整性和一致性,乙個事務在執行...
事務 事務的四個特性
現實生活中,我們往往經常會進行轉賬操作,轉賬操作可以分為兩部分來完成,轉入和轉出。只有這兩部分都完成了才可以認為是轉賬成功。在資料庫中,這個過程是使用兩條語句來完成的,如果其中任意一條語句出現了異常沒有執行,則會導致兩個賬號的金額不同步,造成錯誤。為了防止上面可能出現的情況,mysql引入了事務,所...