privatevoidSetFieldNull (Void *pv, BOOLbNullTRUE=);
Parameter
pv
Die Adresse des einen Felddatenmember im Recordset oder NULLenthält. Wenn NULL, alle Felddatenmember im Recordset gekennzeichnet werden. (C++ NULL ist nicht das gleiche wie Null in der Datenbankterminologie was bedeutet "hat keinen Wert.")
bNull
Ungleich NULL, wenn der Felddatenmember gekennzeichnet werden soll, dass kein Wert (Null) ist. Andernfalls 0, wenn der Felddatenmember als ungleich Null gekennzeichnet werden soll.
Bemerkungen
Rufen Sie diese Memberfunktion um einen Felddatenmember des Recordsets als Null (speziell mit keinen Wert) oder als nicht-Null-flag. Wenn Sie einen neuen Datensatz zu einem Recordset hinzufügen, werden zunächst alle Felddatenmember auf einen Nullwert festgelegt und als "(geänderten) schmutzig" gekennzeichnet. Wenn Sie einen Datensatz aus einer Datenquelle abrufen, seine Spalten entweder bereits Werte oder NULL.
Hinweis&Nbsp; Rufen Sie diese Memberfunktion nicht auf Recordsets, die gesammelte verwenden. Wenn Sie das gesammelte Abrufen von Zeilen implementiert haben, Ergebnisse der Aufruf von SetFieldNull eine Assertionsmeldung. Weitere Informationen über gesammelte finden Sie im Artikel Recordset: Abrufen von Datensätzen in einer Sammeloperation (ODBC) im Visual C++ Programmer's Guide.
Wenn Sie ein Feld des aktuellen Datensatzes als nicht über einen Wert festlegen möchten, rufen Sie SetFieldNull mit bNull Fahne es als Null auf TRUE festgelegt. Wenn ein Feld vorher Null markiert war und nun wollen Sie ihm einen Wert zuzuweisen, legen Sie einfach den neuen Wert. Sie müssen nicht das Null-Flag mit SetFieldNullentfernen. Rufen Sie IsFieldNullable , um festzustellen, ob das Feld Null sein darf,.
Wichtig&Nbsp; Rufen Sie diese Memberfunktion nur nachdem Sie Bearbeiten oder AddNew aufgerufen haben.
Die Verwendung von NULL für das erste Argument der Funktion wird die Funktion nur auf OutputColumns, nicht Paramsangewendet. Zum Beispiel der Aufruf
SetFieldNull (NULL)
nur OutputColumns wird auf NULLfestgelegt werden. Params wird nicht betroffen sein.
Paramszu umgehen, müssen Sie die tatsächliche Adresse der einzelnen Param angeben an, wie z. B. arbeiten möchten:
SetFieldNull (&Amp; M_strParam)
Dies bedeutet, dass Sie nicht alle ParamsNULLfestlegen können, wie Sie mit OutputColumns können .
Hinweis&Nbsp; Wenn der Parameter auf Null festlegen, eröffnet ein Aufruf von SetFieldNull bevor das Recordset ist Ergebnisse in eine Assertion. In diesem Fall rufen Sie SetParamNull.
SetFieldNull wird über DoFieldExchange implementiert.
CRecordset Übersicht | Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp;CRecordset::IsFieldNull, CRecordset::SetFieldDirty, CRecordset::Edit, CRecordset:: Update, CRecordset::IsFieldNullable