如何將多個版本的 DB2 程式繫結到一個包中?


包是 DB2 資料庫物件,它包含 COBOL-DB2 程式中使用的 SQL 的可執行形式。包儲存在目錄表中,幷包含與 SQL 語句相關的策略/表/列/謂詞。

如果在測試環境中存在 DB2 表 ORDERS_TEST,在生產環境中存在 ORDERS_PROD,那麼我們需要兩個版本的 COBOL-DB2 程式(將訪問這些表)——一個用於測試,另一個用於生產。

雖然這兩個程式將是完全相同的副本,但唯一的區別在於 SQL 語句。程式的測試版本將在 SQL 語句中使用表 ORDERS_TEST,而程式的生產版本將在 SQL 語句中使用 ORDERS_PROD 表。為了實現此版本控制,我們需要將程式的包進行區分。

為了保留多個版本的包,我們必須在預編譯步驟中使用 VERSION 選項。因此,我們可以為包的測試版本指定 VERSION(TEST),為包的生產版本指定 VERSION(PROD)。

以下是一個示例

示例

//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) -
VERSION(PROD) -
ACQUIRE(ALLOCATE) -
ISOLATION (RS)
/*

更新於:2020年12月1日

689 次瀏覽

啟動您的職業生涯

完成課程獲得認證

開始
廣告