DB2併發控制-事務隔離級別

sqysl發表於2008-10-24

 今天看完了DB2的安全這塊,又看了點DB2併發控制這塊,基本和其他資料庫差不多,也涉及到事務的四個隔離級別,但和其他資料庫有所不同,就隔離級別這塊,我覺得DB2比其他資料庫來說有點樂觀了,四個隔離級別如下:
1、UR:讀操作,不加任何鎖,對於寫,一樣加鎖,知道事務提交釋放;
2、CS:為DB2預設的隔離級別,只對目前正讀取的行加鎖,一旦讀完就釋放,然後獲取下一行的鎖,目的是為了得到一個平穩讀;
3、RS:不像CS,它不僅僅給目前正在讀取的行加鎖,而且給整個結果集加鎖,這可以保證在相同的事務內,已經被讀取的行不會被其他應用更改;
4、RR:它除了鎖查詢的結果集外,還給為了獲取結果集而讀取的任何記錄行,這保證了在事務期間,你得查詢每次重複可以得到一樣的結果集;

隔離級別的查詢及設定:
1、查詢:
VALUES CURRENT ISOLATION;
SELECT CURRENT ISOLATION FROM sysibm.sysdummy1;
2、 設定隔離級別:
(1)會話級別:動態用SET CURRENT ISOLATION LEVEL -CS;
               靜態用BIND工具;
(2)應用級別:DB2 CLI(CALL LEVEL INTERFACE)或programming interfaces;

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

相關文章