如何將多個版本的 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) /*
廣告