Partager via


CDaoRecordset::SetFieldDirty

Appelez la fonction membre pour signaler des données membres de champ de recordset comme changé ou comme inchangé.

void SetFieldDirty(
   void* pv,
   BOOL bDirty = TRUE 
);

Paramètres

  • pv
    Contient l'adresse des données membres de champ du recordset ou NULL.Si NULL, toutes les données membres de champ du recordset sont signalés.(C++ NULL n'est pas le même que Null dans la terminologie de base de données, ce qui signifie « n'avoir aucun value ".)

  • bDirty
    TRUE si les données membres de champ doivent être marquées d'une indication comme « modifiées » (modifiés).Sinon FALSE si les données membres de champ doivent être marquées d'une indication comme pour commencer par « nettoyer » (inchangé).

Notes

Marquer des champs à mesure que garantit inchangé le champ n'est pas mis à jour.

L'infrastructure marque les membres de données de type champ modifiés pour les vérifier est écrite dans l'enregistrement dans la source de données par le mécanisme du processus DFX (DFX).Modifier la valeur d'un champ définit en général le champ modifié automatiquement, vous devez rarement appeler SetFieldDirty vous-même, mais vous pouvez parfois souhaiter vous assurer que les colonnes sont explicitement mises à jour ou insérées quelle que soit la valeur est dans les données membres de champ.Le mécanisme DFX utilise également l'utilisation de PSEUDONULL.Pour plus d'informations, consultez CDaoFieldExchange::m_nOperation.

Si le mécanisme de double tampon n'est pas utilisé, puis modifier la valeur du champ n'affecte pas automatiquement le champ comme modifié.Dans ce cas, il est nécessaire de définir explicitement le champ comme modifié.La balise contenue dans m_bCheckCacheForDirtyFields contrôle ce contrôle automatique de champ.

[!REMARQUE]

Appelez la fonction membre uniquement après que vous avez appelé modification ou AddNew.

Utilisation NULL pour le premier argument de la fonction s'applique une fonction à tous les champs d' outputColumn , pas champs de param dans CDaoFieldExchange.Par exemple, l'appel

SetFieldDirty(NULL);

définira seuls les champs d' outputColumn à NULL; les champs de param sont pas affectés.

Pour travailler sur param, vous devez fournir l'adresse réelle de la personne param que vous souhaitez utiliser en fonction, telle que :

SetFieldDirty(&m_strParam);

Cela signifie que vous ne pouvez pas définir tous les champs de param à NULL, comme vous pouvez le faire avec les champs d' outputColumn .

SetFieldDirty est implémenté via DoFieldExchange.

Configuration requise

Header: afxdao.h

Voir aussi

Référence

Classe de CDaoRecordset

Graphique de la hiérarchie

CDaoRecordset::SetFieldNull

CDaoRecordset::SetFieldValue