レコード フィールド エクスチェンジ (RFX)

MFC ODBC データベース クラスを使用すると、データ ソースと recordset オブジェクト間のデータの移動を自動化することができます。 CRecordset からクラスを派生させ、かつバルク行フェッチを使用しない場合、データはレコード フィールド エクスチェンジ (RFX) メカニズムによって転送されます。

Note

派生された CRecordset クラスにバルク行フェッチを実装している場合、フレーム ワークでは、バルク レコード フィールド エクスチェンジ (バルク RFX) メカニズムを使用してデータを転送します。 詳細については、「レコードセット: バルク行フェッチ (ODBC)」を参照してください。

RFX は、ダイアログ データ エクスチェンジ (DDX) に似ています。 データ ソースとレコード セットのフィールド データ メンバーの間でデータを移動するには、レコード セットの DoFieldExchange 関数を複数回呼び出す必要があり、フレームワークと ODBC 間でかなりのやり取りが必要です。 RFX のメカニズムはタイプ セーフであり、::SQLBindCol などの ODBC 関数を呼び出す手間を省きます。 DDX の詳細については、「 ダイアログ データ エクスチェンジとダイアログ データ バリデーション」を参照してください。

RFX は、ほとんどの場合、ユーザーに対して透過的です。 MFC アプリケーション ウィザードまたは [クラスの追加] (「MFC ODBC コンシューマーの追加」で説明されています) を使用してレコードセット クラスを宣言すると、RFX がそれらの中に自動的に構築されます。 レコードセット クラスの派生元は、フレームワークによって提供される基底クラス CRecordset である必要があります。 MFC アプリケーション ウィザードを使用すると、最初のレコードセット クラスを作成できます。 [クラスの追加] を使用すると、必要に応じて他のレコードセット クラスを追加できます。 詳細情報と例については、「MFC ODBC コンシューマーの追加」を参照してください。

次のような 3 つの場合に、少量の RFX コードを手動で追加する必要があります。

RFX に関するより高度な知識が必要な場合は、「レコード フィールド エクスチェンジ: RFX の動作のしくみ」を参照してください。

レコードセット オブジェクトの使用については、次のトピックで説明しています。

関連項目

ODBC (Open Database Connectivity)
レコードセット (ODBC)
MFC ODBC コンシューマー
[データベース サポート] (MFC アプリケーション ウィザード)
CRecordset クラス