在 SQL 執行期間,實現 COBOL-DB2 中的表級別鎖


DB2 中會對錶和表空間加鎖,以避免因丟失更新、髒讀和幻讀而導致的問題。

我們需要使用 ACQUIRE 選項在 BIND 包/計劃步驟期間定義鎖引數。

COBOL-DB2 程式 PROGA 使用 SQL 語句訪問表 TA。如果需要在程式中執行特定 SQL 語句時才對表加鎖,則需要如下定義 BIND JCL 步驟−

//BIND EXEC PGM=IKJEFT01
//STEPLIB DD DSN=DIS.TEST.LOADLIB,DISP=SHR
//SYSOUT DD SYSOUT=*
//SYSTSIN DD *
DSN SYSTEM(TB3)
BIND PLAN(PLANA) -
PKLIST(PACKA) -
ACQUIRE(USE) -
/*

必須在 BIND PLAN 步驟中將選項 ACQUIRE 與 USE 引數一起使用。這會指示 DB2 在程式中執行使用該表的 SQL 語句時對 DB2 表加鎖。

更新於:2020 年 9 月 11 日

885 次瀏覽

啟動您的 新的職業生涯

透過完成課程,獲得認證

開始
廣告