sqlca.sqlcodeの値の違い

Pro*Cのコンパイラオプション次第で、sqlca.sqlcodeの値が変わることを知った。

これを誤ると、プログラム的には終了しているのにsqlca.sqlcodeの値が終了の値
(=SQL_NOTFOUNDという定数「値は1403」)でないため、無限ループに陥った。

Pro*Cのコンパイラオプションによる違いは以下の通り。

mode=ANSI ⇒ sqlca.sqlcode=100

mode=ORACLE ⇒ sqlca.sqlcode=1403
(デフォルト)