Oracle中的事務(1)
阿新 • • 發佈:2019-02-15
百度 不執行 ransac 百度百科 修改 單元 成功 ack mit
數據庫事務(Database Transaction) ,是指作為單個邏輯工作單元執行的一系列操作。 事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向數據的資源。通過將一組相關操作組合為一個要麽全部成功要麽全部失敗的單元,可以簡化錯誤恢復並使應用程序更加可靠。---【來自百度百科】
事務的四大特性:
- 原子性(atomicity)
事務必須是原子工作單元;對於其數據修改,要麽全都執行,要麽全都不執行。
- 一致性(consistency)
事務在完成時,必須使所有的數據都保持一致狀態。在相關數據庫中,所有規則都必須應用於事務的修改,以保持所有數據的完整性。
- 隔離性(isolation)
由並發事務所作的修改必須與任何其它並發事務所作的修改隔離,也就是多個事務可以同時進行,互相不產生影響。
- 持久性(durability)
事務完成之後,它對於系統的影響是永久性的。該修改即使出現致命的系統故障也將一直保持。
事務-保存點(Savepoint)
用於回滾時,如果想要撤回剛剛的操作,可以在這些操作之前設置一個保存點,在需要撤回時使用rollback進行回滾。
事務-回滾(rollback)
事務回滾是指將該事務已經完成的對數據庫的更新操作撤銷。
語法:
rollback to 事務名--撤銷單個事務
rollback 不加事務名則撤銷所有存在的事物
事務-提交(commit)
事務的提交指的是把你剛剛操作的數據真正的寫入到數據庫中,這個時候 你就不能在運用rollback進行撤銷你剛才的操作了。
數據庫一旦commit了數據,那麽就會撤銷所有的保存點。所以,這時rollback會得到一個錯誤。
Oracle中的事務(1)