Null oder Not Null

exzel

SQL-Guru
Beiträge
170
Hallo zusammen,

ich habe mehrere Tabellen, in denen Personen und Verträge erfasst werden. Ist es für diesen Anwendungsfall von Bedeutung Spalten als Null oder Not Null zu deklarieren?

Gruß
 
Werbung:

ukulele

Datenbank-Guru
Beiträge
4.582
Mit NOT NULL erzwingst du einen Wert in jeder Zeile. Notwendig ist das nicht (ausgenommen Primary Key), nützlich schon.
 

exzel

SQL-Guru
Beiträge
170
Hallo,

das bedeutet also, wenn in der Eingabemaske kein Wert eingetragen wurde, wird ein vordefinierter Standardwert verwendet und in der Datenbank eingetragen, oder?

Gruß
 

ukulele

Datenbank-Guru
Beiträge
4.582
Nein, NOT NULL heißt, das ein Wert erzwungen wird. Ein Standardwert müsste seperat vorgegeben werden. Da das meist nicht der Fall ist, würde die Datenbank einen Fehler zurück geben und der Datensatz kann nicht gespeichert werden solange die Bedingung NOT NULL nicht erfüllt ist.
 

exzel

SQL-Guru
Beiträge
170
Hallo,

ich glaube ich weiß, warum meine Eingabewerte auch dann gespeichert wurden, wenn manche Felder dennoch leer waren, obwohl diese mit Not Null deklariert waren. Ich rede hier von einer PHP programmierten Maske. Weil in die Datenbank dann Leerzeichen gespeichert wurden. Aber ansonsten würde also die Datenbank die Speicherung ablehnen bis ein Wert eingegeben werden würde, ja?

Gruß
 

ukulele

Datenbank-Guru
Beiträge
4.582
Ja, leer ist ja für die DB nicht NULL :) Eigentlich hebelt die PHP Maske die DB Einschränkung aus, ob sinnvoll oder nicht.
 
Werbung:
Oben