事務由在數據庫中執行的一系列命令組成。事務中的每個命令都是原子的,即它不能進一步拆分為子命令。事務中的任何命令可能會也可能不會更改數據庫的結構。而且,事務所需的更改必須一起進行。如果不執行此規則,則在系統故障、斷電或其他原因時,數據可能會丟失。
一個簡單的事務示例如下 –
Harry 需要將 100 盧比從他的賬戶轉入 Sally 的賬戶。這是作為交易完成的。首先,Harry 的賬戶詳細信息被讀取,他的余額減少了 100。這些新數據被保存回 Harry 的賬戶中。接下來,Sally 的帳戶詳細信息被讀取,她的余額增加了 100。這些新數據被保存回 Sally 的帳戶中。
但是,在數據庫中實現事務很復雜。在上面的例子中,如果從 Harry 的賬戶中提取資金后系統崩潰,這筆錢將永遠不會添加到 Sally 的賬戶中。因此,信息會丟失,Sally 的帳戶永遠不會更新。
事務處理流程
事務由一系列讀寫操作組成。這些用于讀取任何對象的當前值,并寫回經過一些計算后獲得的更新值。
讀取操作
要讀取任何數據庫對象,首先將其帶入從磁盤存入主存。之后,其值被復制到所需的變量中。
寫入操作
寫入任何數據庫對象,都會保存內存中的值然后存儲回磁盤。
以上就是數據庫中事務的定義的詳細內容,更多請關注www.92cms.cn其它相關文章!