CDaoRecordset::DoFieldExchange
L'infrastructure appelle cette fonction membre automatiquement pour échanger des données entre les données membres de champ de l'objet recordset et les colonnes correspondantes de l'enregistrement en cours sur la source de données.
virtual void DoFieldExchange(
CDaoFieldExchange* pFX
);
Paramètres
- pFX
Contient un pointeur vers un objet d' CDaoFieldExchange . L'infrastructure aura déjà installé cet objet pour spécifier un contexte pour l'exécution d'échange des champs.
Notes
Il lie également les membres de données de type paramètre, le cas échéant, aux emplacements de paramètres réservés dans la chaîne d'instruction SQL pour la sélection du recordset. L'échange de données du champ, DFX processus appelé (DFX), fonctionne dans les deux directions : les données membres de champ de l'objet recordset aux champs de l'enregistrement dans la source de données, et de l'enregistrement dans la source de données et l'objet recordset. Si vous exécutez des colonnes liaison dynamique, vous n'êtes pas obligé d'implémenter DoFieldExchange.
La seule action que vous devez normalement suivre pour implémenter DoFieldExchange pour votre classe de recordset dérivée est de créer la classe avec ClassWizard et de spécifier les noms et les types de données membres de champ. Vous pouvez également ajouter du code à ce que ClassWizard écrit pour spécifier des membres de données de type paramètre. Si tous les champs doivent être liés de manière dynamique, cette fonction est inactive sauf si vous spécifiez des membres de données de type paramètre.
Lorsque vous déclarez votre classe de recordset dérivée avec ClassWizard, l'assistant écrit une substitution d' DoFieldExchange pour vous, qui ressemble à l'exemple suivant :
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
Header: afxdao.h