Oracle中的事務(1)--四大特性、保存點、回滾、提交


  數據庫事務(Database Transaction) ,是指作為單個邏輯工作單元執行的一系列操作。 事務處理可以確保除非事務性單元內的所有操作都成功完成,否則不會永久更新面向數據的資源。通過將一組相關操作組合為一個要么全部成功要么全部失敗的單元,可以簡化錯誤恢復並使應用程序更加可靠。---【來自百度百科】

事務的四大特性:

事務應該具有4個屬性:原子性、一致性、隔離性、持久性。這四個屬性通常稱為ACID特性

  • 原子性(atomicity)

  一個事務是一個不可分割的工作單位,對於其數據修改,要么全執行,要么全都不執行。

  • 一致性(consistency)

  事務在完成時,必須使所有的數據都保持一致狀態。在相關數據庫中,所有規則都必須應用於事務的修改,以保持所有數據的完整性。一致性與原子性是密切相關的。

  • 隔離性(isolation)

  一個事務的執行不能被其他事務干擾。即一個事務內部的操作及使用的數據對並發的其他事務是隔離的,並發執行的各個事務之間不能互相干擾。

  • 持久性(durability)

  持久性也稱永久性(permanence),事務完成之后,它對於系統的影響是永久性的。該修改即使出現致命的系統故障也將一直保持。

事務-保存點(Savepoint)

  用於回滾時,如果想要撤回剛剛的操作,可以在這些操作之前設置一個保存點,在需要撤回時使用rollback進行回滾。

  語法:

    savepoint 保存點名稱

事務-回滾(rollback)

  事務回滾是指將該事務已經完成的對數據庫的更新操作撤銷。

  語法:

    rollback to 保存點名稱--撤銷單個事務

    rollback  不加保存點名稱則撤銷所有存在的事物

事務-提交(commit)

  事務的提交指的是把你剛剛操作的數據真正的寫入到數據庫中,這個時候 你就不能在運用rollback進行撤銷你剛才的操作了。

  數據庫一旦commit了數據,那么就會撤銷所有的保存點。所以,這時rollback會得到一個錯誤。當使用commit語句結束事務之后,其他會話將可以查看到事務變化后的新數據。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM