1

以前は 32 ビットの C++ がありました。現在、64ビットに移行しています。また、C++ プログラムは Oracle 10g DB とやり取りします。

私たちの C++ プログラムは 32 ビットで問題なく動作していました。しかし、64 ビットに移行した後、次のことを行う 1 つのプログラムで問題に直面しています。

FETCH(EXEC SQL FETCH SUBP1 INTO :newTabRec;)

オラクルDBから。

次のようになると、C++ プログラムの for ループを終了します。

見つかりません(sqlca.sqlcode=1403)

FETCH ステートメントの実行時。

NOT FOUND シナリオで生成された sqlcode は です1403。しかし、64 ビット C++ に移行すると、sqlcode が表示されず、1403代わりに別のコードが表示されます7124089117159473

sqlcode が ではない1403ため、プログラムは for ループを終了せず、無限ループに進みます。

正確な sqlcode を取得できない原因は何かありますか?

4

0 に答える 0