DFX_Text
Transfère des données CString entre les membres de données de champ d'un objet CDaoRecordset et les colonnes d'un enregistrement sur la source de données.
void AFXAPI DFX_Text(
CDaoFieldExchange* pFX,
LPCTSTR szName,
CString& value,
int nPreAllocSize = AFX_DAO_TEXT_DEFAULT_SIZE,
DWORD dwBindOptions = AFX_DAO_ENABLE_FIELD_CACHE
);
Paramètres
pFX
Un pointeur vers un objet de la classe CDaoFieldExchange. Cet objet contient des informations pour définir le contexte de chaque appel de la fonction.szName
Nom d'une colonne de données.correspondante
La valeur signalée dans le membre de données indiqué - la valeur à transférer. Pour un transfert depuis un recordset vers la source de données, la valeur, de type CString, est prise du membre de données spécifié. Pour un transfert de la source de données à l'ensemble d'enregistrements, la valeur est stockée dans le membre de données spécifié.nPreAllocSize
L'infrastructure pré-alloue cette quantité de mémoire. Si vos données sont plus grande, l'infrastructure allouera l'espace nécessaire. Pour de meilleures performances, définissez la taille avec une valeur suffisamment élevée pour empêcher les reallocations.dwBindOptions
Une option qui vous permet de tirer parti du mécanisme double tampon de MFC pour détecter les champs d'ensemble d'enregistrements qui ont changé. La valeur par défaut, AFX_DAO_ENABLE_FIELD_CACHE, utilise le mécanisme de double tampon. L'autre valeur possible est AFX_DAO_DISABLE_FIELD_CACHE. Si vous spécifiez cette valeur, MFC n'a aucun contrôle sur ce champ. Vous devez appeler SetFieldDirty et SetFieldNull vous-même.Notes
Vous pouvez contrôler si les données sont en double tampon par défaut en attribuant CDaoRecordset::m_bCheckCacheForDirtyFields.
Notes
Les données sont mappées entre le type DAO_CHAR dans DAO (ou, si le symbole _UNICODE est défini, DAO_WCHAR) et le type CString dans le recordset.
Exemple
Cet exemple montre plusieurs appels à DFX_Text. Notez aussi les deux appels à CDaoFieldExchange::SetFieldType. Vous devez écrire le premier appel à SetFieldType et son appel de DFX. Le deuxième appel et les appels de DFX associés sont normalement écrits par l'Assistant Code qui a généré la classe.
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);
}
Configuration requise
En-tête : afxdao.h
Voir aussi
Référence
CDaoFieldExchange::SetFieldType