次の方法で共有


CRecordset::CheckRowsetError

レコードのフェッチにおいて発生したエラーを処理します。

virtual void CheckRowsetError( 
   RETCODE nRetCode  
);

パラメーター

  • nRetCode
    ODBC API 関数の戻り値。 詳細については、「解説」を参照してください。

解説

この仮想メンバー関数は、レコードがフェッチされたときに発生したエラーを処理します。バルク行フェッチにおいて特に便利です。 独自のエラー処理を実装するには、CheckRowsetError をオーバーライドします。

CheckRowsetError は、OpenRequery やいずれかの 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 クラス

階層図

CRecordset::DoBulkFieldExchange

CRecordset::GetRowsetSize

CRecordset::SetRowsetSize

CRecordset::Move

その他の技術情報

CRecordset のメンバー