名前110 | データ・タイプ | フィールドの値 | ||
---|---|---|---|---|
sqlcaid | CHAR(8) | 'SQLCA' を含む記憶域ダンプの「目印」。 SQL プロシージャー本体の解析から行番号情報が戻される場合、6 番目のバイトは 'L' になります。 | ||
sqlcabc | INTEGER | SQLCA の長さ (136)。 | ||
sqlcode | INTEGER | SQL 戻りコード。 個々の SQL 戻りコードの意味については、
メッセージ解説書 のメッセージの節を参照してください。
| ||
sqlerrml | SMALLINT | sqlerrmc の長さ標識 (0 〜 70 の範囲)。 0 は、sqlerrmc の値が関係ないことを示します。 | ||
sqlerrmc | VARCHAR (70) | X'FF' で区切られた 1 つまたは複数のトークンが入り、
エラー条件の説明の中の変数を置き換えます。
このフィールドは、正常に接続が完了した場合にも使用されます。
NOT ATOMIC 複合 SQL ステートメントが発行されると、 最大 7 つのエラーに関する情報を含むことができます。
個々の SQL 戻りコードの意味については、 メッセージ解説書 のメッセージの節を参照してください。 | ||
sqlerrp | CHAR(8) | 製品を示す 3 文字の識別子の後に、製品のバージョン、リリース、
およびモディフィケーション・レベルを示す 5 桁の数字が続きます。
たとえば SQL07010 は、DB2 ユニバーサル・データベース バージョン 7 リリース 1 修正レベル 0 を指します。
SQLCODE がエラー条件を示している場合、 そのエラーを戻したモジュールがこのフィールドに示されます。
このフィールドは、正常に接続が完了した場合にも使用されます。 | ||
sqlerrd | ARRAY | 診断情報の提供に使用される 6 個の INTEGER 変数。 これらの値は、 エラーがない場合は通常は空ですが、区分データベースの sqlerrd(6) は例外です。 | ||
sqlerrd(1) | INTEGER | 接続が正常に起動された場合、
アプリケーションのコード・ページからデータベースのコード・ページに変換する際に予想される
混合文字データ (CHAR データ・タイプ) の長さの差の最大値が入ります。
値 0 または 1 は、拡張がないことを示します。
1 より大きい値は、その長さの分の拡張が見込まれることを示します。
負の値は、切り捨てが見込まれることを示します。a
SQL プロシージャーから正常に戻された場合、その SQL プロシージャーからの戻り状況値が入ります。 | ||
sqlerrd(2) | INTEGER |
接続を呼び出して正常に実行した場合、
データベースのコード・ページからアプリケーションのコード・ページに変換する際に予想される
混合文字データ (CHAR データ・タイプ) の長さの差の最大値が入ります。
値 0 または 1 は、拡張がないことを示します。
1 より大きい値は、その長さの分の拡張が見込まれることを示します。
負の値は、切り捨てが見込まれることを示します。
a SQLCA がエラーの発生した NOT ATOMIC 複合 SQL ステートメントの結果である場合、
この値はエラーの発生したステートメントの番号に設定されます。
| ||
sqlerrd(3) | INTEGER |
PREPARE を呼び出して正常に実行した場合は、 戻される行の数の見積もりが入ります。 INSERT、UPDATE、および DELETE を実行した後は、実際に影響を受けた行の数になります。 複合 SQL を呼び出した場合は、すべてのサブステートメント行の累計が入ります。 CONNECT が呼び出され、データベースが更新可能な場合は 1、 データベースが読み取り専用の場合は 2 が入ります。
SQL プロシージャーで CREATE PROCEDURE を呼び出したものの、
SQL プロシージャー本体の解析でエラーが発生した場合、エラーが発生した行番号が入ります。
この場合、有効な行番号を表すために、sqlcaid の 6 バイト目は必ず 'L' になります。
| ||
sqlerrd(4) | INTEGER |
PREPARE を呼び出して正常に実行した場合は、
ステートメントの処理に必要なリソースの相対的なコストの見積もりが入ります。
複合 SQL を呼び出した場合は、
正常に実行されたサブステートメントの数のカウントが入ります。
CONNECT を呼び出した場合は、
下位レベルのクライアントからの 1 フェーズ・コミットなら 0、
1 フェーズ・コミットなら 1、1 フェーズの読み取り専用コミットなら 2、
2 フェーズ・コミットなら 3 が入ります。
| ||
sqlerrd(5) | INTEGER |
以下の両方の結果として削除、挿入、または更新された行の合計数が入ります。
複合 SQL を呼び出した場合は、
すべてのサブステートメントの上記のような行の累計が入ります。
場合によっては、エラーが発生した場合に、
内部エラー・ポインターである負の値が入ります。
CONNECT を呼び出した場合は、サーバーの認証の場合は認証タイプ値 0、
クライアントの認証の場合は 1、DB2 コネクトを使用した認証の場合は 2、
DCE 機密保護サービスの認証の場合は 3、
認証が指定されていない場合は 255 が入ります。
| ||
sqlerrd(6) | INTEGER |
区分データベースの場合、エラーまたは警告が出された区分の区分番号が入ります。
エラーまたは警告が出されなかった場合は、
このフィールドには調整プログラム・ノードの区分番号が入ります。
このフィールドに入る番号は、
db2nodes.cfg ファイルで区分に対して指定されたものと同じです。
| ||
sqlwarn | 配列 | 一連の警告標識で、それぞれの標識はブランクか W です。 複合 SQL を呼び出した場合は、 すべてのサブステートメントについての警告標識の累積が入ります。 | ||
sqlwarn0 | CHAR(1) | 他の標識がすべてのブランクの場合はブランク、 1 つでもブランクでない標識があれば W。 | ||
sqlwarn1 | CHAR(1) | ホスト変数への割り当て時にストリング列の値が切り捨てられた場合に W になります。
ヌル終止符が切り捨てられた場合は N になります。
CONNECT または ATTACH が正常に実行され、 その接続の authID が 8 バイトを超える場合は A になります。 | ||
sqlwarn2 | CHAR(1) | 関数の引き数からヌル値が削除された場合、W が入りま す。b | ||
sqlwarn3 | CHAR(1) | 列の数とホスト変数の数が等しくない場合、W が入ります。 | ||
sqlwarn4 | CHAR(1) | 準備された UPDATE または DELETE ステートメントに WHERE 文節が指定されていない場合に、 W が入ります。 | ||
sqlwarn5 | CHAR(1) | 将来の使用のために予約済み。 | ||
sqlwarn6 | CHAR(1) | 存在しない日付を避けるために日付演算の結果が調整された場合に W が入ります。 | ||
sqlwarn7 | CHAR(1) | 将来の使用のために予約済み。
CONNECT が呼び出されて正常に実行された場合に、 DYN_QUERY_MGMT データベース構成パラメーターが使用可能であれば、'E' が入ります。 | ||
sqlwarn8 | CHAR(1) | 変換できなかった文字が置換文字に置き換えられた場合に W になります。 | ||
sqlwarn9 | CHAR(1) | エラーのある算術式が列関数の処理時に無視された場合に W になります。 | ||
sqlwarn10 | CHAR(1) | SQLCA 内のフィールドのいずれかで、 文字データ値の変換時に変換エラーが起きた場合、W が入ります。 | ||
sqlstate | CHAR(5) | 直前に実行された SQL ステートメントの結果を示す戻りコード。 | ||
|
関連情報: