COBOL-DB2程式中SAVEPOINT的用途和用法
問題:如何在DB2中使用SAVEPOINT?SAVE-POINT在DB2中的作用是什麼?請舉例說明。
解決方案
SAVEPOINT用作標記或標籤,用於儲存對資料庫的更改,而無需提交。在對資料庫進行更改後,我們可以使用命名SAVEPOINT語句,然後可以在任何時間點使用ROLLBACK語句將更改回滾到此儲存點。
實際上,我們可以在COBOL-DB2程式中設定多個SAVEPOINT,並且可以使用ROLLBACK跳轉到其中任何一個SAVEPOINT。這將還原在SAVEPOINT之後對資料庫進行的所有更改。
我們可以如下使用ROLLBACK和SAVEPOINT。
示例
SAVEPOINT MARK1 … …… ROLLBACK TO SAVEPOINT MARK1
例如,考慮以下流程圖。
在初始SQL語句中,ORDER_TOTAL使用SQL語句更新為值2346,並且使用SAVEPOINT將資料庫的當前狀態標記為“A”。
接下來對ORDER_TOTAL列進行更新,並再次使用SAVEPOINT將資料庫狀態標記為“B”。現在,如果給出“ROLLBACK TO SAVEPOINT A”,則資料庫的當前狀態將恢復到ORDER_TOTAL = 2346的狀態。
廣告