Access Anfänger: Prüfung auf NULL

Aus DBWiki
Wechseln zu: Navigation, Suche

Frage

Warum funktioniert das so nicht?

   If RS!FirmaID Is Null Then
      MsgBox "Bitte eine Firma auswählen!"
   End If

oder auch:

   If IsEmpty(RS!FirmaID) Then
      MsgBox "Bitte eine Firma auswählen!"
   End If

Antwort

Auf NULL-Werte prüft man mit der IsNull()-Funktion:

   If IsNull(RS!FirmaID) Then
      MsgBox "Bitte eine Firma auswählen!"
   End If

In SQL geht das genauso:

SELECT * FROM MeineTabelle WHERE IsNull(MeinFeld)

SQL-konform ist allerdings:

SELECT * FROM MeineTabelle WHERE MeinFeld IS NULL

Die IsEmpty()-Funktion prüft auf nicht initialisierte Variant-Variablen.

   Dim v As Variant
 
   Debug.Print v = 0      ' gibt True aus
 
   Debug.Print v = ""     ' gibt True aus
 
   Debug.Print IsEmpty(v) ' hier ist IsEmpty(A) = True,
                          ' um zwischen den beiden Zuständen
                          ' zuvor unterscheiden zu können
 
   v = 1
   Debug.Print IsEmpty(v) ' hier ist IsEmpty(A) = False
 
   v = Null
   Debug.Print IsEmpty(v) ' hier bleibt IsEmpty(A) = False

Wiki-Links

Weblinks