共用方式為


CDaoRecordset::SetFieldNull

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

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

參數

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

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

備註

SetFieldNull 的欄位、使用繫結在 DoFieldExchange 機制。

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

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

如果您不使用雙重緩衝機制,則會變更欄位的值不會自動設定欄位標記為已變更和非 null。 您必須明確設定為非 null 的欄位已變更和。 在 m_bCheckCacheForDirtyFields 包含的旗標會控制這個自動欄位檢查。

DFX 機制使用 PSEUDONULL。 如需詳細資訊,請參閱 CDaoFieldExchange::m_nOperation

注意事項注意事項

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

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

SetFieldNull(NULL);      

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

需求

Header: afxdao.h

請參閱

參考

CDaoRecordset 類別

階層架構圖

CDaoRecordset::SetParamValue