SQLDA の SQLERRD の第 3 要素 (SQLERRD(3)) には、INSERT、UPDATE、DELETE、および SELECT INTO の各文で処理された行数が記録されます。FETCH 文の場合は、SQLERRD(3) に処理済み行の累計数が記録されます。
SQLERRD(3)
DB2 では、SQLERRD(3) に次の内容が格納されます。
- PREPARE が呼び出されて成功した場合は、返される予想行数。
- INSERT、UPDATE、および DELETE の後には、実際に影響された行数。
- 複合 SQL が呼び出された場合は、成功した副文の数。
- CONNECT が呼び出された際は、データベースが更新可能な場合は 1、データベースが読み取り専用の場合は 2。
- ホスト配列の処理時にエラーが発生した場合は、処理が成功した最後の行。
SQLERRD(4)
DB2 では、SQLERRD(4) に次の内容が格納されます。
- PREPARE が呼び出されて成功した場合は、文の処理に必要なリソースの相対コスト評価。
- 複合 SQL が呼び出された場合は、成功した副文の数。
- CONNECT が呼び出された際は、下位レベルのクライアントからの 1 フェーズ コミットの場合は 0、1 フェーズ コミットの場合は 1、1 フェーズ、読み取り専用コミットの場合は 2、2 フェーズ コミットの場合は 3。
SQLERRD(5)
DB2 では、SQLERRD(5) に次の内容が格納されます。
- 次の両方の結果により削除、挿入、または更新された総行数。
- 削除操作が成功した後の制約の強制。
- 有効化されたトリガーからトリガーされた SQL 文の処理。
- 複合 SQL が呼び出された場合は、副文すべての行数の累計値。いくつかのケースでは、エラーが生じた場合に、このフィールドには内部エラーへのポインターとなる負の値が含まれます。
- CONNECT が呼び出された際は、サーバー認証の場合は認証型値 0、クライアント認証の場合は 1、DB2 Connect を使用した認証の場合は 2、DCE セキュリティ サービス認証の場合は 3、不特定の認証には 255。