6.1 DBSQLCAクラスの詳細

エラー情報を管理します。

このクラスは,エラー情報やその数などを取得するメソッドを提供するクラスです。

同期処理を実行している場合,スローされた例外をキャッチします。非同期処理を実行している場合は,最大100個までのエラーを保存できます。各種のエラー情報を保存するプロパティを持ち,各プロパティ値を参照するメソッドや,保存されているエラーを削除するメソッドを提供します。

DBMS非依存エラーコードについて
DBMS非依存エラーコードとは,DABrokerが,DBMSごとに異なるエラーコードの違いを吸収し,アプリケーションでDBMSを意識しないでエラー処理を記述するためのものです。
e_USERCODEプロパティとe_USERERRORプロパティには,DBMS非依存エラーコードが設定されます。内容については「2.4 エラー処理」を参照してください。
エラー情報の参照
同期処理実行の場合
アプリケーションで同期処理を実行している場合は,一度に一つのエラーがDBSQLCAオブジェクトにスローされます。
エラー情報を取得するためには,オブジェクトのプロパティ値を参照します。
(例1)

catch (DBSQLCA ca)
{
  code=ca.e_USERCODE   // codeにエラーコードを取得
}

非同期処理実行の場合
非同期処理を実行している場合に発生したエラーは,DBSQLCAオブジェクトに複数保存されています。このDBSQLCAオブジェクトへのポインタは,各クラスのGetErrorStatusメソッドで取得できます。
(例2)

DBSQLCA     *pError;
pError = pStatement->GetErrorStatus();
        // pErrorにDBSQLCAオブジェクトのポインタを取得

DBSQLCAオブジェクトに保存される複数のエラーには,発生した順番に1から始まるインデクス番号が割り当てられます。また,ある時点までに取得したエラーの個数が,Countプロパティに設定されます。エラー情報は最大100個まで保存しますが,それ以降は古いエラー情報からエラーが発生するたびに削除されます。

現在エラー情報が幾つ保存されているかを知るには,Countプロパティの値を参照します。例えば,Countプロパティの値が「3」の場合は,現在3個のエラーが保存されています。

エラー情報を取得するには,DBSQLCAオブジェクトのGet~メソッドを使います。これらのメソッドでは,取得したいエラーのインデクス番号を指定できます。例えば, Countプロパティの値が「3」の場合に,最新のエラー情報を取得するためには, Get~メソッドのインデクスに「3」を設定します。過去のエラー情報を参照したい場合は,「3」より小さい数を指定します。

過去のエラー情報をすべて削除したい場合はDeleteメソッドを呼び出します。Deleteメソッドでエラー情報を削除すると,その後はまた発生した順番に,1から始まるインデクス番号が割り当てられて,複数のエラーが保存されます。

機 能プロパティ名
DBSQLCAオブジェクトが保存しているエラーの総数が設定されます。Count
最新のエラーの,DABrokerメッセージテキストが設定されます。ErrorMessage
最新のエラーの,DABrokerエラーコードが設定されます。RetCode
最新のエラーの,データベース固有のエラーコードが設定されます。e_SQLCODE
最新のUPDATE/INSERT/DELETE操作で実際に処理されたレコード数が設定されます。e_SQLCOUNT
最新のエラーの,データベース固有のエラーメッセージが設定されます。e_SQLERROR
最新のエラーの,データベース固有のSQLSTATE値が設定されます。e_SQLSTATE
最新のエラーの, DBMS非依存エラーコードが設定されます。e_USERCODE
最新のエラーの, DBMS非依存エラーコードのエラーメッセージが設定されます。e_USERERROR

 

機 能メソッド名
DBSQLCAオブジェクトを削除します。Delete
指定されたエラーの,DABrokerメッセージテキストを取得します。GetErrorMessage
指定されたエラーの,DABrokerエラーコードを取得します。GetRetCode
指定されたエラーの,データベース固有のエラーコードを取得します。GetSQLCODE
指定されたUPDATE/INSERT/DELETE操作で実際に処理されたレコード数を取得します。GetSQLCOUNT
指定されたエラーの,データベース固有のエラーメッセージを取得します。GetSQLERROR
指定されたエラーの,データベース固有のSQLSTATE値を取得します。GetSQLSTATE
指定されたエラーの,DBMS非依存エラーコードを取得します。GetUSERCODE
指定されたエラーの,DBMS非依存エラーコードのエラーメッセージを取得します。GetUSERERROR
<この節の構成>
Countプロパティ
ErrorMessageプロパティ
e_SQLCODEプロパティ
e_SQLCOUNTプロパティ
e_SQLERRORプロパティ
e_SQLSTATEプロパティ
e_USERCODEプロパティ
e_USERERRORプロパティ
RetCodeプロパティ
Deleteメソッド
GetErrorMessageメソッド
GetRetCodeメソッド
GetSQLCODEメソッド
GetSQLCOUNTメソッド
GetSQLERRORメソッド
GetSQLSTATEメソッド
GetUSERCODEメソッド
GetUSERERRORメソッド