CRecordset::CheckRowsetError
レコードのフェッチにおいて発生したエラーを処理します。
virtual void CheckRowsetError(
RETCODE nRetCode
);
パラメーター
- nRetCode
ODBC API 関数の戻り値。 詳細については、「解説」を参照してください。
解説
この仮想メンバー関数は、レコードがフェッチされたときに発生したエラーを処理します。バルク行フェッチにおいて特に便利です。 独自のエラー処理を実装するには、CheckRowsetError をオーバーライドします。
CheckRowsetError は、Open、Requery やいずれかの Move 操作などのカーソル移動操作から自動的に呼び出されます。 ODBC API 関数の SQLExtendedFetch の戻り値が渡されます。 nRetCode パラメーターとして使用できる値の一覧を次の表に示します。
nRetCode |
説明 |
---|---|
SQL_SUCCESS |
関数は正常に終了しました。これ以上の情報は存在しません。 |
SQL_SUCCESS_WITH_INFO |
関数は重大なエラーを起こさず正常に終了しました。 SQLError を呼び出すことによって追加情報を取得できます。 |
SQL_NO_DATA_FOUND |
結果セットのすべての行がフェッチされました。 |
SQL_ERROR |
関数は失敗しました。 SQLError を呼び出すことによって追加情報を取得できます。 |
SQL_INVALID_HANDLE |
環境ハンドル、接続ハンドル、またはステートメント ハンドルが不正なために関数が失敗しました。 これはプログラミング エラーです。 SQLError から追加情報を取得することはできません。 |
SQL_STILL_EXECUTING |
非同期に開始された関数がまだ実行中です。 既定では、MFC はこの値を CheckRowsetError に渡すことはありません。MFC は、SQL_STILL_EXECUTING を返さなくなるまで SQLExtendedFetch を呼び出し続けます。 |
SQLError の詳細については、Windows SDK を参照してください。 バルク行フェッチの詳細については、資料を参照してくださいレコード セット:一括 (ODBC) 内のレコードをフェッチ。
例外
このメソッドは、CDBException* 型の例外をスローできます。
必要条件
**ヘッダー:**afxdb.h
参照
参照
CRecordset::DoBulkFieldExchange