何謂交易? 這一篇文章寫得不錯,可以參考一下…
在 Oracle 中,控制交易的敘述有三個,分別為:
COMMIT
保存對資料的所有更動,清除交易中所有的 savepoint,並釋放對交易的鎖定。
ROLLBACK
復原目前交易中已經完成的工作,也就是最後一次的 COMMIT 之後所有的對資料的變更都會被回復。
SAVEPOINT
可以讓使用者自訂復原的點,這可以讓 ROLLBACK 不會一次全作,而是只復原到特定的點。
關於 COMMIT 與 ROLLBACK 的使用,其實就是加在要 COMMIT 或是 ROLLBACK 的地方就可以了!
比較特殊的是 SAVEPOINT,以下簡單介紹 SAVEPOINT 的用法。
首先先搜尋 counties 中的資料:
接著執行以下 SQL 指令:
由結果可以很明顯看到,在 SAVEPOINT Belgium 之後被更改的資料都被還原囉!
沒有留言:
張貼留言