次の方法で共有


CDaoFieldExchange クラス

DAO データベース クラスで使われる DAO レコード フィールド エクスチェンジ (DFX: DAO Record Field eXchange) ルーチンをサポートします。

class CDaoFieldExchange

解説

CDaoFieldExchange には、基本クラスはありません。

独自のデータ型のデータ交換ルーチンを記述するときはこのクラスを使用します。それ以外にこのクラスを直接使用することはありません。 DFX は、CDaoRecordset オブジェクトのフィールド データ メンバーとデータ ソースの現在のレコードの対応するフィールドとの間でデータを交換します。 DFX は、データ ソースからとデータ ソースへの両方向の交換を管理します。 独自の DFX ルーチンの記述の詳細については、「テクニカル ノート 53: DAO データベース クラス用カスタム DFX ルーチン」を参照してください。

注意

DAO データベース クラスは、オープン データベース コネクティビティ (ODBC: Open Database Connectivity) に基づいている MFC データベース クラスとは性質が異なります。 すべての DAO データベース クラス名には、"CDao" というプリフィックスが付きます。 DAO クラスを使って ODBC データ ソースにもアクセスできます。 通常、DAO に基づく MFC クラスは、ODBC に基づく MFC クラスよりも柔軟性があります。 DAO を基にしたクラスは、ODBC ドライバーを使ってアクセスできるのに加え、独自のデータベース エンジンを経由してもデータにアクセスできます。 DAO を基にしたクラスは、DAO を直接呼び出さずにクラスを経由してテーブルを追加するなどのデータ定義言語 (DDL: Data Definition Language) 操作をサポートします。

注意

DAO レコード フィールド エクスチェンジ (DFX) は、ODBC を基にした MFC データベース クラス (CDatabaseCRecordset) のレコード フィールド エクスチェンジ (RFX) によく似ています。 RFX を理解している場合は、DFX も簡単に使用できます。

CDaoFieldExchange オブジェクトは、DAO レコード フィールド エクスチェンジの発生に必要なコンテキスト情報を提供します。 CDaoFieldExchange オブジェクトは、パラメーターとフィールド データ メンバーのバインド、現在のレコードのフィールドの各種フラグの設定などを含む多くの操作をサポートします。 DFX 操作は、CDaoFieldExchange で enum FieldType によって定義された型のレコードセット クラスのデータ メンバーに対して行われます。 次の FieldType の値を使用できます。

  • CDaoFieldExchange::outputColumn フィールド データ メンバー

  • CDaoFieldExchange::param パラメーター データ メンバー用

IsValidOperation メンバー関数は、独自の DFX ルーチンを記述するために用意されています。 独自の CDaoRecordset::DoFieldExchange 関数では SetFieldType を頻繁に使います。 DFX グローバル関数の詳細については、「レコード フィールド エクスチェンジ (RFX) 関数」を参照してください。 独自のデータ型に対する独自の DFX ルーチンの記述の詳細については、「テクニカル ノート 53: DAO データベース クラス用カスタム DFX ルーチン」を参照してください。

必要条件

**ヘッダー:**afxdao.h

参照

参照

階層図

CDaoRecordset クラス

その他の技術情報

CDaoFieldExchange のメンバー