如何預編譯COBOL-DB2程式?
預編譯是將COBOL-DB2程式中使用的SQL語句替換為相應的COBOL呼叫的過程。預編譯在實際編譯之前是必要的,因為COBOL編譯器無法識別DB2 SQL語句,並且會因這些語句而引發錯誤。
DB2實用程式DSNHPC用於預編譯。預編譯JCL步驟的輸入是用於COBOL-DB2程式中相應表的DCLGEN(在SYSLIB中)和COBOL-DB2源程式(在SYSIN中)。
//STEP010 EXEC PGM=IKJEFT01 //SYSIN DD DSN=DIS.TEST.COBOL(PSNEW2),DISP=SHR //SYSLIB DD DSN=DIS.TEST.DCLGEN(PSDC2), DISP=SHR //DBRMLIB DD DSN=DIS.TEST.DBRMLIB(PSNEW2),DISP=SHR //SYSCIN DD DSN=DIS.TEST.COBL(PSCOB2), DISP=(NEW,CATLG,DEL), SPACE=(20, (90,90)) //SYSOUT DD SYSOUT=*
執行此JCL步驟後,我們將收到以下兩個主要元素:
DBRM接收在DBRMLIB中,其中包含程式中存在的所有SQL語句。DBRM在後續的BIND步驟中用於獲取PLAN或PACKAGE。
修改後的COBOL源程式接收在SYSCIN中,其中所有SQL語句都被替換為COBOL呼叫。此修改後的原始碼將進一步編譯和連結編輯。
廣告