如果在 DCLGEN 中使用 COPY 语句而不是 INCLUDE 语句,结果会怎样?


INCLUDE 语句和 COPY 语句的主要区别在于:INCLUDE 语句中的 PDS 成员在预编译期间展开,而 COPY 语句中的 PDS 成员在编译期间展开。

由于 DCLGEN 成员包含表的列名(表结构),因此有必要在预编译期间展开它。这是因为在预编译时,所有 SQL 语句都会被验证,放入 DBRM 中,最后被替换为相应的 COBOL 调用。

如果使用 COPY 语句而不是 INCLUDE 语句提供 DCLGEN 成员,则在预编译期间会产生 DB2 警告,因为预编译器将无法验证 COBOL-DB2 程序中的 SQL 语句。

更新于:2020年9月14日

2K+ 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.