Udostępnij za pośrednictwem


CRecordset::SetFieldNull

Flagi członek zestawu rekordów danych pola jako wartość Null (w szczególności o żadnej wartości) lub niezerowe.

void SetFieldNull(
   void* pv,
   BOOL bNull = TRUE 
);

Parametry

  • pv
    Zawiera adres elementu danych pola w zestawie rekordów lub NULL.Jeśli NULL, wszyscy członkowie danych pola w zestawie rekordów są oznaczone flagą.(C++ NULL nie jest taka sama jak wartość Null w terminologii baz danych, co oznacza "posiadające wartość nie.")

  • bNull
    Niezerowa, jeśli element danych pola jest oznaczony jako nie wartości (Null).Inaczej 0, jeśli element danych pola jest oznaczony jako niezerowe.

Uwagi

Podczas dodawania nowego rekordu do zestawu rekordów, wszystkich członków danych pola są początkowo ustawiona na wartość Null i oznaczony jako "dirty" (zmienione).Podczas pobierania rekordu ze źródła danych, jej kolumn już wartości albo mają wartości Null.

[!UWAGA]

Nie wymagają tej funkcji Członkowskich na zestawy rekordów przy użyciu pobieranie wiersza luzem.Jeśli zaimplementowano pobieranie wiersza luzem, wywołanie SetFieldNull powoduje potwierdzenia nie powiodło się.Aby uzyskać więcej informacji na temat Pobieranie wiersza luzem, zobacz artykuł rekordów: pobieranie rekordów luzem (ODBC).

Jeśli chcesz wyznaczyć jako nie posiadające wartość wywołania pola bieżącego rekordu SetFieldNull z bNull ustawiona na TRUE do flagi jako Null.Jeśli pole zostało oznaczone wcześniej Null i teraz chcesz nadać jej wartość, po prostu ustaw jej nową wartość.Nie trzeba usunąć flagę Null z SetFieldNull.Aby określić, czy pole może być Null, wywołanie IsFieldNullable.

Informacje dotyczące przestrogiPrzestroga

Wywołanie tej funkcji Członkowskich tylko po wywołaniu Edytuj lub AddNew.

Za pomocą NULL dla pierwszego argumentu funkcji będą stosowane tylko do funkcji outputColumn pól nie param pól.Na przykład wywołanie

SetFieldNull(NULL);

zostanie ustawiony tylko outputColumn pól do NULL; Parametr pól będą nienaruszone.

Prace nad param pól, należy podać rzeczywisty adres osoby param chcesz pracować, takie jak:

SetFieldNull(&m_strParam);

Oznacza to, nie można ustawić wszystkie param pól do NULL, jak outputColumn pól.

[!UWAGA]

Podczas ustawiania parametrów NULL wywołanie SetFieldNull przed zestaw rekordów jest otwarte skutkuje potwierdzenia.W przypadku wywołania SetParamNull.

SetFieldNulljest realizowana przez DoFieldExchange.

Wymagania

Nagłówek: afxdb.h

Zobacz też

Informacje

Klasa CRecordset

Wykres hierarchii

CRecordset::IsFieldNull

CRecordset::SetFieldDirty

CRecordset::Edit

CRecordset::Update

CRecordset::IsFieldNullable