MySql Null/not Null

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

NULL heißt einfach, dass der Wert nicht definiert ist, also nicht existiert.
Bei Not NULL ist es so, dass in dem Datenfeld ein Wert/Betrag stehen muss, anders gibts ne Fehlermeldung. (zb der Primärschlüssel muss immer vorhanden sein)

Oh, die Antwort dürfte besser sein als meine. Ich hatte das bezogen auf die Abfragen verstanden, nicht bezogen auf das Design der Datenbank.

0
@Trilobit

gut möglich, aber du hast es ja auch gut erklärt ;)

0

Danke :)

0

Kleiner Klugschiss an dieser Stelle.

Hier vier Formen der Null, die für einen Mensch das gleiche bedeuten können, für einen Computer aber völlig unterschiedliche Werte darstellen:

  1. NULL
  2. "NULL"
  3. 0
  4. "0"

NULL bedeutet zwar im englischen tatsächlich auch die Zahl null, aber im Zusammenhang mit Computern sollte man es mit "Nichts" übersetzen.

Falls Du etwas programmierst, wird Dir der Unterschied deutlich, wenn Du eine Variable verwenden willst. Typischerweise wird eine Variable zuerst deklariert, und der Computer richtet dann intern einen Speicherbereich ein, der den Wert dieser Variable aufnehmen soll. Zu diesem Zeitpunkt hat die Variable den Wert NULL, also noch keinen zugewiesenen Wert. Danach wird typischerweise die Variable initialisert, d.h. Du weist der Variable einen Wert zu, sagen wir auf den Zahlenwert 1. Damit wird der Wert von NULL auf 1 geändert.

Ein Beispiel:

Wenn du für nicht existierende Temperaturmesswerte, z.B. weil der Sensor eine Zeit lang ausgefallen war, 0 einträgst, bekommst du für die Durchschnittstemperatur ein falsches Ergebnis. Der Wert null bedeutet, dass ein entsprechender Eintrag an der Stelle nicht existiert - so kannst du die Messfehler ignorieren und die unverfälschte Durchschnittstemperatur ermitteln.

Was möchtest Du wissen?