MySQL中事務四大特性
MySQL是一種常用的關系型數據庫管理系統(tǒng)(RDBMS),支持事務處理。事務是指將一系列涉及多個數據庫操作的操作序列看作一個整體,簡而言之就是:要么全做,要么全不做。在MySQL中,事務具有ACID四大特性。
原子性(Atomicity)
原子性指事務中所有操作都是不可分割的整體,要么全部操作成功,要么全部操作失敗回滾。例如,轉賬操作中,從A賬戶減少金額和從B賬戶增加金額是原子性操作,不能只執(zhí)行其中一項操作。
一致性(Consistency)
一致性指事務執(zhí)行前后數據庫的狀態(tài)必須是一致的,即滿足約束條件和完整性約束條件。例如,銀行賬戶轉賬限制余額不能為負數,系統(tǒng)的實際余額和記賬余額也必須相等。
隔離性(Isolation)
隔離性指多個事務之間的操作互不干擾,即每個事務在執(zhí)行的過程中是獨立的,不會被其他事務的操作所干擾。例如,多個用戶同時查詢銀行賬戶的余額時,不能看到其他用戶已經修改的余額數據。
持久性(Durability)
持久性指事務成功執(zhí)行后,其結果將永久保存在數據庫中,即使系統(tǒng)出現(xiàn)故障也不會丟失。例如,銀行賬戶轉賬操作成功后,即使系統(tǒng)宕機也不會影響賬戶金額的變化。