共用方式為


CRecordset::SetFieldNull

旗標資料錄集的欄位資料成員標記為空白 (特別是具有值) 或為非 null。

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

參數

  • pv
    在資料錄集或 NULL包含欄位資料成員的位址。 如果 NULL,所有至資料錄集的欄位資料成員旗標。 (C++ NULL 與在資料庫詞彙中的 null,並不表示有「value ". ")。

  • bNull
    如果不是零,欄位資料成員不會標示為具有 null 值 ()。 則為 0,如果欄位資料成員將標示為非 null。

備註

當您加入一筆新資料錄至資料錄集時,所有欄位資料成員初始設定為 null 值並將其標示為「變更 (Dirty)」(變更)。 當您從資料來源中擷取資料錄,其資料行已經具有或的值為 null。

注意事項注意事項

不能在使用大量資料列擷取的資料錄集的成員函式。如果您實作大量資料列擷取,呼叫 SetFieldNull 造成失敗的判斷提示。如需大量資料列擷取的詳細資訊,請參閱本文 資料錄集:擷取大量資料錄 (ODBC)

如果您想要明確指定為具有的目前資料錄的欄位值,以 bNull 的呼叫 SetFieldNull 設為 旗標則為 null。 如果欄位先前已標記為 Null,現在您想要提供值,將它設定為新值。 您不必移除空旗標與 SetFieldNull。 若要判斷欄位是否可為 null,請呼叫 IsFieldNullable

警告

在呼叫 編輯AddNew後,請呼叫此成員函式。

使用函式的第一個引數的 NULL 只將函式套用至 outputColumn 欄位,而不是 param 欄位。 例如,呼叫。

SetFieldNull(NULL);

要設定為只 outputColumn 欄位對應至 NULL; param 欄位並不會受到影響。

param 欄位進行工作,您必須提供個別您要使用的 param 實際位址,例如:

SetFieldNull(&m_strParam);

這表示您不能將所有 param 欄位加入至 NULL,在中,您可以使用 outputColumn 欄位。

注意事項注意事項

當將參數設定為 null 時,呼叫 SetFieldNull 在資料錄集的是在判斷提示的開啟的結果。在這種情況下,呼叫 SetParamNull

SetFieldNull 傳遞 DoFieldExchange中實作。

需求

Header: afxdb.h

請參閱

參考

CRecordset 類別

階層架構圖

CRecordset::IsFieldNull

CRecordset::SetFieldDirty

CRecordset::Edit

CRecordset::Update

CRecordset::IsFieldNullable