Freigeben über


CRecordset::IsFieldDirty

Bestimmt, ob der angegebene Felddatenmember geändert wurde, seit Bearbeiten oder AddNew aufgerufen wurden.

BOOL IsFieldDirty( 
   void * pv  
);

Parameter

  • pv
    Ein Zeiger auf Felddatenmember, dessen Status überprüfen möchten oder wenn Sie eine der Feldern zu bestimmen NULL, geändert wurden.

Rückgabewert

Ungleich 0 (null), wenn der angegebene Felddatenmember seit dem Aufrufen von AddNew oder von Bearbeiten geändert hat; andernfalls 0.

Hinweise

Die Daten in allen geänderten Felddatenmember werden dem Datensatz der Datenquelle übertragen, der aktuelle Datensatz durch einen Aufruf der Update-Memberfunktion der CRecordset aktualisiert wird (einem Aufruf Bearbeiten oder zu AddNew unten).

Hinweis

Diese Memberfunktion ist nicht in Recordsets angewendet werden, die das gesammelte Abrufen von Zeilen verwenden.Wenn Sie das gesammelte Abrufen von Zeilen implementiert haben, gibt IsFieldDirty immer FALSE zurück und ergibt einen Assertionsfehler.Weitere Informationen über das gesammelte Abrufen von Zeilen, finden Sie im Artikel Recordset: Datensätzen in einer Sammeloperation (ODBC).

Das Aufrufen von IsFieldDirty setzt die Auswirkungen für der Aufrufe SetFieldDirty zurück, da der geänderte Status des Felds neu ausgewertet wird. Im AddNew Fall der aktuelle Feldwert vom Pseudonull-wert unterscheidet, ist der Feldstatus Menge geänderte. Im Bearbeiten Fall der Feldwert vom zwischengespeicherten Wert unterscheidet, dann im Feldstatus ist die geänderte.

IsFieldDirty wird durch DoFieldExchange implementiert.

Weitere Informationen über das geänderte Flag, finden Sie im Artikel Recordset: Datensatzauswahl durch Recordsets (ODBC).

Ausnahmen

Diese Methode kann Ausnahmen des Typs CMemoryException* auslösen.

Anforderungen

Header: afxdb.h

Siehe auch

Referenz

CRecordset-Klasse

Hierarchiediagramm

CRecordset::SetFieldDirty

CRecordset::IsFieldNull