回滾操作、回滾段的理解

star_guan2008發表於2008-06-16

回滾操作:

oracle裡面常用的rollback操作,就是在某處操作中間設定一個點, 然後繼續作事情,如果覺得有問題了,就rollback一下,等於那個點後面的操作就都沒作。當然如果commit了就沒用了。

回滾段:

準確的說,回滾段裡放的是被修改資料的前像,用來提高讀/寫操作的併發度
回滾段裡某個事務使用的空間不會被釋放,在commit後會被其它事務重用。

 

1.儲存操作前資料
  比如表中有記錄A,B,如果對記錄B執行delete或update操作,還沒有執行commit,這時表中只剩下A或修改後的B,而操作前的資料資訊會暫存在回滾段,如果你想恢復操作前的資料,執行rollback即可
2.資料讀一致性
  如果一個使用者對錶進行了操作刪除了記錄B,還沒有提交,而此時另外一個使用者對該表查詢,查詢結果將是A和B兩條記錄,B記錄來源於回滾段,如果執行操作的使用者執行了commit;所有使用者再對該表進行查詢看到的將是修改後的結果。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10742223/viewspace-349391/,如需轉載,請註明出處,否則將追究法律責任。

相關文章