Ich habe eigentlich nur eine kleine Frage:
Wenn ich einen MOD habe, in dem ich die Datenbak erweitern muss, steht da, was ich einrichten muss. Wenn da nun nicht explizit "not null" steht, muss dann das feld NULL auf "null" oder "not null" gestellt werden? meine standardeinstellung wäre dort "not null" und bisher hatte ich das immer so gelassen. Oder ist das bei verschiedenen variablen (z.B. VARCHAR(255) ) egal?
phpMy Admin Frage zu "null" und "not null&quo
Im Zweifel ist bei MySQL "NULL" Standard (siehe http://www.mysql.com/doc/en/CREATE_TABLE.html). Wenn der Mod sauber programmiert ist, sollte diese Einstellung auch immer funktionieren. Bei NOT NULL hingegen kann es zu Problemen kommen, sobald der Mod explizit mit dem NULL-Wert arbeitet.
Gruß, Philipp
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
- oxpus
- Ehemaliges Teammitglied
- Beiträge: 5394
- Registriert: 03.02.2003 12:33
- Wohnort: Bad Wildungen
- Kontaktdaten:
Ich weis nicht, ob ich jetzt völlig daneben liege, aber bedeutet "not null" nicht, das das betreffende Feld nicht leer sein darf?
Korrigiert mich, aber ich denke, das ist doch der eigentliche Unterschied zwischen "null" und "not null"
Und somit ist eben "null" Standard, damit ein Datensatz auf jeden Fall angelegt werden kann, es sei, der Admin legt bestimmte Felder explizit mit "not null" an...
Korrigiert mich, aber ich denke, das ist doch der eigentliche Unterschied zwischen "null" und "not null"

Und somit ist eben "null" Standard, damit ein Datensatz auf jeden Fall angelegt werden kann, es sei, der Admin legt bestimmte Felder explizit mit "not null" an...
Grüße
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
oxpus,
du liegst etwas falsch. Die genaue Beschreibung liegt hinter dem Link, den ich oben gepostet habe.
Ein Feld, dass das Attribut 'NOT NULL' hat, darf durchaus den Wert 0 oder den leeren String ("") annehmen - nur eben nicht den Wert NULL.
Gruß, Philipp
du liegst etwas falsch. Die genaue Beschreibung liegt hinter dem Link, den ich oben gepostet habe.
Ein Feld, dass das Attribut 'NOT NULL' hat, darf durchaus den Wert 0 oder den leeren String ("") annehmen - nur eben nicht den Wert NULL.
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
- oxpus
- Ehemaliges Teammitglied
- Beiträge: 5394
- Registriert: 03.02.2003 12:33
- Wohnort: Bad Wildungen
- Kontaktdaten:
@PhilippK
Ach so! Wieder was gelernt. Danke für die Erklärung.
Mit Datenbanken kenne ich mich ja eigentlich aus, aber so im Detail kann man halt immer noch was Neues lernen
EDIT / Nachtrag:
In der Beschreibung zu CREATE TABLE wird NULL und NOT NULL folgendermassen erklärt (grob beschrieben):
Ein Feld mit Default NULL ist per Standard eben leer.
Ein NOT NULL-Feld beinhaltet als Standardwert eine 0 (numerisch), einen Autowert, einen Zeitstempel (Datum-Zeit) oder einen Leerstring (String-Feld), halt je na Feld-Typ. Korrekt: NULL darf ein solches Feld nicht sein!
Somit ist ein Feld mit Default NOT NULL eben doch nicht leer (Auch ein Leerstring ist ein Inhalt, so habe ich das vor Urzeiten mal gelernt!)
Wird bei einem Dateisatz für ein NOT NULL-Feld nichts angegeben, so setzt die Datenbank halt nur automatisch o.g. Standardwerte ein...
Ach so! Wieder was gelernt. Danke für die Erklärung.
Mit Datenbanken kenne ich mich ja eigentlich aus, aber so im Detail kann man halt immer noch was Neues lernen

EDIT / Nachtrag:
In der Beschreibung zu CREATE TABLE wird NULL und NOT NULL folgendermassen erklärt (grob beschrieben):
Ein Feld mit Default NULL ist per Standard eben leer.
Ein NOT NULL-Feld beinhaltet als Standardwert eine 0 (numerisch), einen Autowert, einen Zeitstempel (Datum-Zeit) oder einen Leerstring (String-Feld), halt je na Feld-Typ. Korrekt: NULL darf ein solches Feld nicht sein!
Somit ist ein Feld mit Default NOT NULL eben doch nicht leer (Auch ein Leerstring ist ein Inhalt, so habe ich das vor Urzeiten mal gelernt!)

Grüße
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!
OXPUS
Kein Support bei unaufgeforderten PNs, E-Mails oder auf anderem Weg!!