SQLCA中SQLWARN3的用法是什么?借助实际示例进行解释?
SQLCA中的SQLWARN3字段用于检测条件,其中结果列的数量大于在COBOL-DB2程序查询中给定的主机变量的数量。SQLWARN3是一个1字节的字段,当查询返回的列数与使用的主机变量数不匹配时,包含值“W”。
我们可以使用IF或EVALUATE语句查询SQLWARN3的状态,如下例所示
A010-CHECK-ORDER.
EXEC SQL
SELECT ORDER_DATE,
ORDER_TOTAL
INTO :ORDER-DATE,
FROM ORDERS
WHERE ORDER_ID = :ORDER-ID
END-EXEC
EVALUATE SQLWARN3
WHEN ‘W’
DISPLAY ‘MISMATCH IN COLUMNS & HOST VARIABLES’
WHEN OTHER
DISPLAY ‘QUERY EXECUTED SUCCESSFULLY’