次の方法で共有


CDaoRecordset::IsFieldNull

更新 : 2007 年 11 月

レコードセットの指定したフィールド データ メンバが NULL かどうかを調べます。

BOOL IsFieldNull(
   void* pv 
);

パラメータ

  • pv
    状態を調べるフィールド データ メンバへのポインタ。NULL のフィールドがあるかどうかを調べるには NULL を指定します。

戻り値

指定されたフィールド データ メンバが NULL の場合は 0 以外の値を返します。それ以外の場合は 0 を返します。

解説

(C++ での NULL とは異なり、データベースの専門用語では、NULL は "値を持たない" ことを意味します。)フィールド データ メンバが NULL の場合は、現在のレコードの列には値がないと解釈されます。

36dh83c2.alert_note(ja-jp,VS.90).gifメモ :

次のコードで示されているように、IsFieldNull の使用が効果的ではない場合もあります。

COleVariant varValue;
void* pField = &(rs.m_Age);
int nField = 2;

// this code is inefficient because data
// must be retrieved for both IsFieldNull
// and GetFieldValue
if (!rs.IsFieldNull(pField))
   rs.GetFieldValue(nField, varValue);

// this code is more efficient
rs.GetFieldValue(nField, varValue);
if (varValue.vt == VT_NULL)
   varValue.Attach(varNewVal);// do something
36dh83c2.alert_note(ja-jp,VS.90).gifメモ :

CDaoRecordset からクラスを派生せずに、ダイナミック レコード連結を使用する場合は、例のように VT_NULL を使用します。

必要条件

ヘッダー : afxdao.h

参照

参照

CDaoRecordset クラス

階層図

CDaoRecordset::IsFieldDirty

CDaoRecordset::IsFieldNullable

その他の技術情報

CDaoRecordset のメンバ