Null-Werte und wie man damit umgeht

Lies diesen Artikel und viele weitere mit einem kostenlosen, einwöchigen Testzugang.

Null ist nicht 0 ist nicht “”. Das sind die grundlegenden Weisheiten, die man als Access-Entwickler verinnerlichen muss. Was ist aber dann Null Und wie erkenne ich die Unterschiede etwa zu 0 oder einer leeren Zeichenfolge In diesem Artikel erfahren Sie mehr zu diesem Thema und lernen den Umgang mit Null-Werten samt der dazu notwendigen Funktionen wie IsNull oder Nz kennen.

Beispieldatenbank

Die Beispiele dieses Artikels finden Sie in der Datenbank 1205_NullWerte.mdb.

Null, 0 und die leere Zeichenfolge

Wenn Sie auf die Daten einer Tabelle zugreifen – beispielsweise über eine Domänenfunktion wie DLookup – erhalten Sie verschiedenste Werte. Im Optimalfall finden Sie den gesuchten Wert wie etwa den Vornamen eines Kunden vor. Vielleicht wurde aber gar kein Vorname in den entsprechenden Datensatz eingetragen – dann ist das Feld leer und DLookup liefert den Wert Null zurück (Wir gehen an dieser Stelle davon aus, dass es einen Datensatz mit dem Wert 1 im Feld KundeID gibt – anderenfalls würde DLookup auch den Wert Null zurückliefern, aber diesmal, weil überhaupt kein passender Datensatz gefunden wurde).

Das können Sie prüfen, indem Sie im Direktbereich des VBA-Editors (zu öffnen mit Strg + G) die folgenden Anweisung absetzen:

  DLookup("Vorname", "tblKunden", "KundeID = 1")
    Null

Wenn Sie das Ergebnis dieses Aufrufs von DLookup nun innerhalb einer kleinen Prozedur in eine Variable des Datentyps String eintragen möchten, führt dies zu einem Fehler (siehe Bild 1): Unzulässige Verwendung von Null. Null ist also zumindest schon einmal nichts, was man einer String-Variablen als Inhalt zuweisen kann.

Fehler beim Versuch, einer String-Variablen einen NULL-Wert zuzuweisen

Bild 1: Fehler beim Versuch, einer String-Variablen einen NULL-Wert zuzuweisen

Was tun Wahrscheinlich möchten Sie der Variablen an dieser Stelle schlicht und einfach eine leere Zeichenkette zuweisen, also den Ausdruck “”.

Die IsNull-Funktion

Um dies zu erledigen, können Sie vorab prüfen, ob das Feld den Wert Null enthält und in diesem Fall die leere Zeichenkette übergeben.

Ende des frei verfügbaren Teil. Wenn Du mehr lesen möchtest, hole Dir ...

Testzugang

eine Woche kostenlosen Zugriff auf diesen und mehr als 1.000 weitere Artikel

diesen und alle anderen Artikel mit dem Jahresabo

Schreibe einen Kommentar