Null
null
ist in der Informatik eine verbreitete Bezeichnung für nicht vorhandene Werte. In manchen Programmiersprachen und Datenbanksystemen sind auch andere Bezeichnungen wie nil
(Redis, Ruby), None
(Python) oder Nothing
(Haskell) gebräuchlich.
null
ist nicht dasselbe wie die Zahl 0 oder eine leere Zeichenkette. Eine leere Zeichenkette ist ein leeres Etwas, null
ist nichts.
Programmierung
Nullwerte sind eine häufige Fehlerquelle beim Programmieren, wenn man etwa die Länge eines Strings abfragen möchte, aber dieser String nicht existiert, also null
ist. Ein Beispiel in Java:
public boolean isValidIBAN(String maybeIBAN) {
if (maybeIBAN.length() != 22) {
return false;
}
// weitere Tests...
}
In diesem Beispiel wird die Methode length
der KlasseString
verwendet. Das null
-Objekt gehört dieser Klasse aber nicht an und verfügt darum nicht über diese Methode. Beim Ablauf des Programms ereignet sich darum eine NullPointerException
.
Datenbanken
In SQL dürfen prinzipiell alle Attribute in einer Relation auf NULL
gesetzt werden. Das kann sehr sinnvoll sein. Man kann aber auch explizit mit der Bedingung NOT NULL
verbieten, dass Attribute auf NULL
gesetzt werden.
Eine Relation Person
hat die Spalten Name
, Geburtsdatum
und Sterbedatum
. Noch lebende Personen können nur abgespeichert werden, wenn das Sterbedatum
NULL
sein darf. Zugleich sollte das Geburtsdatum aber nicht NULL
sein dürfen.