事務(wù)
事務(wù)是一系列動(dòng)作,這一系列動(dòng)作綜合在一起組成一個(gè)完整的工作單元,如果有任何一個(gè)動(dòng)作執(zhí)行失敗,那么事務(wù)就將回到最開(kāi)始的狀態(tài),仿佛一切都沒(méi)發(fā)生過(guò)。例如,老生常談的轉(zhuǎn)賬問(wèn)題,從轉(zhuǎn)出用戶(hù)的總存款中扣除轉(zhuǎn)賬金額和增加轉(zhuǎn)出用戶(hù)的賬戶(hù)金額是一個(gè)完整的工作單元,如果只完成扣除或者增加都會(huì)導(dǎo)致錯(cuò)誤,造成損失,而事務(wù)管理技術(shù)可以避免類(lèi)似情況的發(fā)生,保證數(shù)據(jù)的完整性和一致性。同樣在企業(yè)級(jí)應(yīng)用程序開(kāi)發(fā)過(guò)程中,事務(wù)管理技術(shù)也是必不可少的。
事務(wù)有四個(gè)特性:ACID
原子性(Atomicity):事務(wù)是一個(gè)原子操作,有一系列動(dòng)作組成。原子性保證所有動(dòng)作都完成,或者不執(zhí)行任何動(dòng)作。
一致性(Consistency):一旦事務(wù)完成(不論成?。?,系統(tǒng)必須確保它所建模的業(yè)務(wù)處于一致的狀態(tài)。
隔離性(Isolation):可能有很多事務(wù)會(huì)同時(shí)處理相同的數(shù)據(jù),因此每個(gè)事務(wù)都應(yīng)該與其他事務(wù)隔離開(kāi)來(lái),防止數(shù)據(jù)損壞。