CRecordset::SetFieldNull
Contrassegna un membro dati di campo del recordset come null (in particolare non avendo valore) o come non Null.
void SetFieldNull(
void* pv,
BOOL bNull = TRUE
);
Parametri
pv
Contiene l'indirizzo di un membro dati di campo del recordset o in NULL.Se NULL, tutti i membri dati di campo del recordset è contrassegnato.(C++ NULL non equivale a null nella terminologia del database, che significa "non avere value ".)bNull
Diverso da zero se il membro dati di campo deve essere contrassegnato come non con valore [null].In caso contrario 0 se il membro dati di campo deve essere contrassegnato come non Null.
Note
Quando si aggiunge un record a un recordset, tutti i membri dati di campo inizialmente sono impostati su un valore null e sono contrassegnati come "modifica" (modificato).Quando si recuperano un record da un'origine dati, le colonne già dispongono di valori o null.
[!NOTA]
Non chiamare la funzione membro nei recordset che utilizzano il recupero di massa di righe.Se si è implementato il recupero di massa di righe, chiamare SetFieldNull comporta una asserzione non riuscita.Per ulteriori informazioni sul recupero di massa di righe, vedere l'articolo recordset: Recupero di massa di record (ODBC).
Se in particolare desidera definire un campo del record corrente come non con un valore, chiamata SetFieldNull con bNull impostato su TRUE per contrassegnarlo come null.Se un campo fosse già contrassegnato come null e ora si desidera fornire un valore, impostare semplicemente il nuovo valore.Non è necessario rimuovere il flag null con SetFieldNull.Per determinare se il campo è consentito null, chiamare IsFieldNullable.
Attenzione |
---|
Chiamare la funzione membro solo dopo aver chiamato Modifica o AddNew. |
Utilizzando NULL per il primo argomento della funzione applicata la funzione solo ai campi outputColumn, non campi param.Ad esempio, la chiamata
SetFieldNull(NULL);
imposterà solo i campi outputColumn a NULL; i campi param non saranno interessati da.
Per utilizzare i campi param, è necessario fornire all'indirizzo dell'utente param che si desidera operare, ad esempio:
SetFieldNull(&m_strParam);
Ciò significa che non è possibile impostare tutti i campi param a NULL, come accade per i campi outputColumn.
[!NOTA]
Nell'impostare i parametri per annullare, una chiamata a SetFieldNull prima del recordset è risultati aperti in un'asserzione.In questo caso, chiamata SetParamNull.
SetFieldNull distribuito con DoFieldExchange.
Requisiti
Header: afxdb.h