Preprocessor2は、プログラムのステータスとエラー情報を、いくつかの方法でアプリケーションに戻すことができます。
Teradataセッション モードで実行するよう作成されたアプリケーションの主な接続方式は、SQLCA構造でした.SQLCAは、完了したDML文の戻りコードや他の情報のリストを含むデータ構造です。
- 結果の報告
- 警告条件の報告
- DSNTIARのサポート
埋め込みSQLアプリケーション プログラムは、埋め込みSQL文を実行した結果を表わす戻りコードのSQLCAフィールドを問合わせます。
埋め込みSQLアプリケーションでは、提供されているルーチン(PPRTEXTを参照)を使用して、完全な診断テキストを取得することもできます。
SQLCAは、ストアド プロシージャと同時に使用することはできません。
ANSI準拠
SQLコミュニケーション領域およびINCLUDE SQLCA文は、ANSI SQLに準拠していません。プリプロセッサTRANSACTまたは-trオプションをANSIにセットすると、エラーとしてINCLUDE SQLCAフラグが付きます。
ANSIモード アプリケーションは、SQLSTATEステータス変数およびSQLCODEステータス変数によって、プログラムのステータスとエラーを報告します(SQLCODE変数とSQLSTATE変数の相互マッピングおよびDatabaseエラー メッセージに対するマッピングの詳細は、SQLSTATEのマッピングを参照してください)。
ANSI/ISO SQL-92規格では、SQLCODEを明示的に推奨していません。ANSI/ISO SQL-99規格では、SQLCODEは定義されなくなりました。ANSIトランザクション モードで実行するストアド プロシージャおよび埋め込みSQLアプリケーションを作成するときには、必ずSQLSTATEを使用する必要があります。Teradataトランザクション モードで実行するストアド プロシージャおよび埋め込みSQLアプリケーションでもSQLSTATEを使用できます。
ANSI環境でストアド プロシージャまたは埋め込みSQLアプリケーションを開発する場合、SQLCAの代わりにステータス変数SQLSTATEを使用し、それをコードで明示的に定義します。詳細については、SQLSTATE、SQLCODEおよびSQLSTATEのマッピングを参照してください。