如何在 DB2 程式中實現 CS、RR、UR 和 RS 隔離級別?
隔離級別定義了在 COBOL-DB2 程式中訪問的 DB2 資料與另一個並行執行的 COBOL-DB2 程式隔離的程度。DB2 中有 4 種主要型別的隔離級別。
遊標穩定性 (CS) - 遊標穩定性隔離級別僅鎖定程式正在訪問的當前行。一旦程式移到下一行,前一行的鎖就會被釋放。遊標穩定性僅獲取已提交的行供程式訪問。這是預設的隔離級別。
讀穩定性 (RS) - 此隔離級別會對所有符合 SQL 語句謂詞(例如:WHERE 子句)的行進行加鎖。鎖將保留到整個處理完成。
未提交讀 (UR) - 未提交讀隔離級別用於僅用於讀取目的的 SQL 語句。不會對行/記錄進行加鎖,並且它會獲取已提交的行以及未提交的行(來自其他程式/事務)。
可重複讀 (RR) - 當我們需要保留鎖直到提交時,使用此隔離級別。
要為 COBOL-DB2 程式定義隔離級別,我們需要在 BIND 步驟的 ISOLATION 選項中使用相應的引數。以下是可以使用該引數定義隔離級別的 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(ALLOCATE) - ISOLATION (RS) /*
在上述步驟中,我們使用了帶有 RS 引數的 ISOLATION 選項,它對應於讀穩定性。類似地,我們有用於遊標穩定性的引數 CS、用於可重複讀的引數 RR 和用於未提交讀的引數 UR。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP