SQL 通信区 (SQLCA)

SQLCA是每个SQL语句执行后更新的变量结构或集合。 包含可执行SQL语句的应用程序必须提供一个SQLCA,少数例外情况除外。

以下情况例外:

  • 使用STDSQL(YES)选项预编译的程序不得提供SQLCA
  • 在某些情况下, Fortran 程序必须提供多个SQLCA。

在除REXX之外的所有主机语言中,SQL INCLUDE语句可用于提供SQLCA的声明。

在COBOL和汇编语言中:
存储区域名称必须为SQLCA。
在PL/I和C中:
结构名称必须为SQLCA。 每个可执行的SQL语句必须在其声明的范围内。

除非另有说明 ,C 代表 C/370 和 C/C++ 编程语言。

Fortran :
SQLCA中INTEGER变量的COMMON区域名称必须为 SQLCA1; ,CHARACTER变量的COMMON区域名称必须为 SQLCA2。 每个包含SQL语句的子程序都需要一个SQLCA定义。 如果主程序包含SQL语句,也需要一个。
在Java™中:
应使用封装了SQLCA的 DB2Sqlca 类。
在REXX中:
Db2 自动生成SQLCA。 REXX程序不能使用INCLUDE语句。 REXX SQLCA与其他语言的SQLCA格式有所不同。