程序中所有SQL语句通用错误捕获逻辑的实现
一个COBOL-DB2程序可以有多个DB2SQL语句。为了对COBOL-DB2程序中的所有SQL语句实现常见的错误捕获,我们将使用WHENEVER语句。
WHENEVER语句可以根据SQLCA的SQLCODE字段中返回的值将控制定向到错误处理部分或例程。例如,我们可以在COBOL-DB2程序中声明WHENEVER语句,如下所示:
EXEC SQL WHENEVER SQLERROR GOTO ERROR-ROUTINE END-EXEC
在上面的例子中,只有当SQLCODE的值小于零时才会设置SQLERROR参数,这表明在执行查询时发生了一些错误。在这种情况下,控制将转移到程序的ERRORROUTINE段。