次の方法で共有


アップグレードに関する推奨事項 : NULL 値の反映の不使用

更新 : 2007 年 11 月

以前のバージョンの Visual Basic では、NULL 値の反映がサポートされています。NULL 値の反映は、式で NULL が使用されている場合に、式の結果自体が Null になるという前提を支えるものです。次の例では、どの場合にも V の結果が NULL になります。

Dim V
V = 1 + Null
V = Null + Right$("SomeText", 1)
V = Right("SomeText", 0)

NULL 値の反映は、Visual Basic 2008 ではサポートされていません。1+Null というステートメントは、Visual Basic 2008 では型の不一致を発生させます。また、Visual Basic 6.0 の Left 関数には文字列を返す Left$ と Null に設定できるバリアントを返す Left の 2 種類がありましたが、Visual Basic 2008 にあるのは Left の 1 種類だけで、これは常に文字列を返します。

Visual Basic 6.0 と Visual Basic 2008 の両方との互換性を確保するには、Null 値の反映を使用せずに、Null をテストするコードを常に記述する必要があります。また、Visual Basic 2008 では、以下の関数は Null を返しません。

Chr, Command, CurDir, Date, Environ, Error, Hex, LCase, LTrim, Oct, Right, RTrim, Space, Str, Time, Trim, UCase

NULL 値の反映は、データベースのフィールドに NULL が含まれるかどうかを調べる必要があるデータベース アプリケーションで、一般的に使用されています。そのような場合は、関数 IsNull() を使用して結果を確認し、適切なアクションを実行します。

参照

その他の技術情報

言語に関するアップグレード上の推奨事項