Zulassen von NULL-Werten

Durch die NULL-Zulässigkeit einer Spalte wird bestimmt, ob die Zeilen in der Tabelle für diese Spalte NULL-Werte enthalten dürfen. Ein NULL-Wert oder auch einfach NULL ist nicht mit Null (0), einem Leerzeichen oder einer Zeichenfolge der Länge Null, wie z. B. "", identisch. NULL bedeutet, dass keine Eingabe vorgenommen wurde. Das Vorhandensein eines NULL-Werts bedeutet gewöhnlich, dass der Wert entweder unbekannt oder nicht definiert ist. Ein NULL-Wert in der SellEndDate-Spalte der Production.Product-Tabelle der AdventureWorks2008R2-Datenbank bedeutet nicht, dass für das Element kein Verkaufsenddatum vorhanden ist. NULL bedeutet, dass das Datum unbekannt ist oder nicht festgelegt wurde.

HinweisHinweis

Sie sollten das Zulassen von NULL-Werten vermeiden, da NULL-Werte eine erhöhte Komplexität von Abfragen und Aktualisierungen nach sich ziehen und es andere Spaltenoptionen gibt, z. B. PRIMARY KEY-Einschränkungen, die nicht für Spalten verwendet werden können, die NULL-Werte zulassen.

Wenn eine Zeile eingefügt wird, aber für eine Spalte, die NULL-Werte zulässt, kein Wert angegeben ist, fügt Database Engine (Datenbankmodul) den Wert NULL ein, wenn keine DEFAULT-Definition oder ein DEFAULT-Objekt vorhanden ist.Eine Spalte, die mit dem NULL-Schlüsselwort definiert wurde, lässt zudem die explizite Eingabe von NULL durch den Benutzer zu, und zwar unabhängig davon, welchen Datentyp die Spalte aufweist und ob der Spalte ein Standardwert zugewiesen wurde. Der Wert NULL sollte nicht mit Anführungszeichen hinzugefügt werden, da er in diesem Fall als die Zeichenfolge NULL und nicht als NULL-Wert interpretiert würde.

Wenn durch eine Spaltendefinition NULL-Werte ausgeschlossen werden, kann dies das Aufrechterhalten der Datenintegrität unterstützen, da sichergestellt ist, dass eine Spalte in einer Zeile immer Daten enthält. Wenn NULL-Werte nicht zulässig sind, muss ein Benutzer, der Daten in eine Tabelle eingibt, einen Wert in die Spalte eingeben. Anderenfalls kann die Tabellenzeile nicht von der Datenbank angenommen werden.

HinweisHinweis

Spalten, die mit einer PRIMARY KEY-Einschränkung oder der IDENTITY-Eigenschaft definiert wurden, lassen keine NULL-Werte zu.