レコード フィールド エクスチェンジ (RFX)
MFC ODBC データベース クラスは、データ ソースとレコードセット オブジェクトの間でデータを自動的にやり取りできます。 CRecordset から派生したクラスでバルク行フェッチを使用しない場合、データはレコード フィールド エクスチェンジ (RFX) 機構を通じて転送されます。
注意
CRecordset の派生クラスにバルク行フェッチが実装されている場合、フレームワークでは、バルク レコード フィールド エクスチェンジ (Bulk RFX: Bulk Record Field Exchange) 機構を使用してデータを転送します。 詳細については、「レコードセット : バルク行フェッチ (ODBC)」を参照してください。
RFX は、ダイアログ データ エクスチェンジ (DDX: Dialog Data Exchange) に似た機構です。 データ ソースとレコードセットのフィールド データ メンバー間でデータをやり取りするには、レコードセットの関数 DoFieldExchange を何度も呼び出して、フレームワークと ODBC の間で大量のデータをやり取りする必要があります。 RFX を利用すると、型の一貫性が保証され、::SQLBindCol などの ODBC 関数の呼び出しが自動化されます。 DDX の詳細については、「ダイアログ データ エクスチェンジとダイアログ データ バリデーション」を参照してください。
これらの機能は、RFX の存在を意識せずに利用できます。 MFC のアプリケーション ウィザードまたは クラスの追加 を使って宣言したレコードセット クラス (手順については「MFC ODBC コンシューマーの追加」を参照) には、RFX が自動的に組み込まれます。 各レコードセット クラスの派生元は、フレームワークが提供する基本クラス CRecordset です。 MFC のアプリケーション ウィザードでは、初期レコードセット クラスを作成できます。 クラスの追加 では、必要に応じて、その他のレコードセット クラスを追加できます。 詳細については、「MFC ODBC コンシューマーの追加」を参照してください。
ただし、次の 3 つの処理を行う場合は、RFX コードを手動で追加する必要があります。
パラメーター化されたクエリを使用する場合。 詳細については、「レコードセット : パラメーターを利用したレコードセット (ODBC)」を参照してください。
レコードセット オブジェクトを使って複数のテーブルの列を結合する場合。 詳細については、「レコードセット : 結合 (ODBC)」を参照してください。
データ列を動的に結び付ける場合。 この方法よりもパラメーターを用いた方法の方が一般的です。 詳細については、「レコードセット : データ列を動的に結び付ける方法 (ODBC)」を参照してください。
RFX の詳細については、「レコード フィールド エクスチェンジ : RFX の動作のしくみ」を参照してください。
レコードセット オブジェクトの使用方法の詳細については、次のトピックを参照してください。
参照
処理手順
参照
[データベース サポート] (MFC アプリケーション ウィザード)