次の方法で共有


DFX_Text

更新 : 2007 年 11 月

CDaoRecordset オブジェクトのフィールド データ メンバとデータ ソースのレコードの列との間で、CString 型データを転送します。

void AFXAPI DFX_Text(
   CDaoFieldExchange* pFX,
   LPCTSTR szName,
   CString& value,
   int nPreAllocSize = AFX_DAO_TEXT_DEFAULT_SIZE,
      DWORD dwBindOptions = AFX_DAO_ENABLE_FIELD_CACHE 
);

パラメータ

  • pFX
    CDaoFieldExchange クラスのオブジェクトへのポインタ。このオブジェクトは、関数の各呼び出しのコンテキストを定義する情報を保持します。

  • szName
    データ列の名前。

  • value
    指定されたデータ メンバに格納される値。この値は転送されます。レコードセットからデータ ソースへの転送では、指定されたデータ メンバから CString 型の値を取得します。データ ソースからレコードセットへの転送では、指定されたデータ メンバに値が格納されます。

  • nPreAllocSize
    フレームワークがあらかじめ確保するメモリの量を指定します。データが大きいときは、フレームワークは必要に応じてさらにスペースを確保します。パフォーマンスを向上させるには、再確保の必要が生じないように、このサイズに十分大きな値を設定しておきます。

  • dwBindOptions
    変更されたレコードセット フィールドを検出するために、MFC のダブル バッファ機構を利用するかどうかを指定するオプションです。既定の AFX_DAO_ENABLE_FIELD_CACHE では、ダブル バッファを使います。もう 1 つの使用可能な値は AFX_DAO_DISABLE_FIELD_CACHE です。この値を指定すると、MFC はこのフィールドをチェックしません。ユーザー自身が SetFieldDirtySetFieldNull を呼び出す必要があります。

    505batbf.alert_note(ja-jp,VS.90).gifメモ :

    CDaoRecordset::m_bCheckCacheForDirtyFields を設定することにより、すべてのフィールドでデータが既定でダブル バッファリングされるかどうかを制御できます。

解説

データは、DAO の DAO_CHAR 型 (シンボル _UNICODE が定義されているときは DAO_WCHAR 型) とレコードセットの CString 型の間に割り当てられます。

使用例

例ではいくつかの DFX_Text を呼び出しています。2 つの CDaoFieldExchange::SetFieldType 呼び出しにも注目してください。SetFieldType に対する最初の呼び出しと、関連する DFX 呼び出しはユーザーが記述する必要があります。通常、2 番目の呼び出しと、関連する DFX 呼び出しは、クラスを生成するコード ウィザードで記述します。

void CCustSet::DoFieldExchange(CDaoFieldExchange* pFX)
{
   pFX->SetFieldType(CDaoFieldExchange::param);
   DFX_Text(pFX, _T("Param"), m_strParam);
   pFX->SetFieldType(CDaoFieldExchange::outputColumn);
   DFX_Short(pFX, _T("EmployeeID"), m_EmployeeID);
   DFX_Text(pFX, _T("LastName"), m_LastName);
   DFX_Short(pFX, _T("Age"), m_Age);
   DFX_DateTime(pFX, _T("hire_date"), m_hire_date);
   DFX_DateTime(pFX, _T("termination_date"), m_termination_date);

   CDaoRecordset::DoFieldExchange(pFX);
}

必要条件

ヘッダー : afxdao.h

参照

概念

MFC マクロとグローバル

参照

DFX_Bool

DFX_Long

DFX_Currency

DFX_Short

DFX_Single

DFX_Double

DFX_DateTime

DFX_Byte

DFX_Binary

DFX_LongBinary

CDaoFieldExchange::SetFieldType