如何将多个版本的 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 次浏览

启动您的职业生涯

完成课程获得认证

开始
广告