MySQL Default wert
Dennis_b
- datenbank
Hallo leute.....
wenn ich in meiner Datenbank für irgendeiner Zeile den Default wert setzte z.b alter table buch alter sprache set default "Deutsch";
Wird der Default bei einem NULL-Wert nicht angezeigt.Warum nicht?
Danke
:-)
Hallo leute.....
wenn ich in meiner Datenbank für irgendeiner Zeile den Default wert setzte z.b alter table buch alter sprache set default "Deutsch";
Wird der Default bei einem NULL-Wert nicht angezeigt.Warum nicht?Danke
:-)
Unter eine richtigen SQL-Server DB wird der default Wert nur für NEUE Rows eingetragen, die alten NULL Werte musst du aktualisieren. Ich vermute unter MY.SQL ist das auch so...
Unter eine richtigen SQL-Server DB wird der default Wert nur für NEUE Rows eingetragen, die alten NULL Werte musst du aktualisieren. Ich vermute unter MY.SQL ist das auch so...
Ich weiss....aber auch dann wird der Default wert nicht gezeigt.
Ich bekomme keine Fehler Meldung als ich den Default wert gesetzt habe.
Unter eine richtigen SQL-Server DB wird der default Wert nur für NEUE Rows eingetragen, die alten NULL Werte musst du aktualisieren. Ich vermute unter MY.SQL ist das auch so...
Ich weiss....aber auch dann wird der Default wert nicht gezeigt.
Ich bekomme keine Fehler Meldung als ich den Default wert gesetzt habe.
wie hast du den genau eingetragen? schick mal das alter table statement!
Hallo....
wie hast du den genau eingetragen? schick mal das alter table statement!
Ich meine das so:
Beispiel:
alter table buch alter sprache set default "Deutsch";
..
insert into buch(titel,autor,sprache) values ("MySQL","Pollakowski","");
**Dann müsste doch der Default wert von Sprache doch "Deutsch" sein
oder nicht?
Hallo....
wie hast du den genau eingetragen? schick mal das alter table statement!
Ich meine das so:
Beispiel:alter table buch alter sprache set default "Deutsch";
..
insert into buch(titel,autor,sprache) values ("MySQL","Pollakowski","");**Dann müsste doch der Default wert von Sprache doch "Deutsch" sein
oder nicht?
HaHa (sorry :))das Statement muss so lauten:
insert into buch(titel,autor) values ("MySQL","Pollakowski");
Wenn du sagst, sprache soll "" sein, das wird der default wert natürlich überschrieben... gibts du es nciht an, wird er gesetzt!
Hallo Thomas!
Danke Danke Danke.........hast mein Wochenden gerettet...!
Habe alles mögliche ausprobiert..nur das nicht.
Klappt alles Prima..!
Schöne grüße aus dem Norden...
Dennis
..ahso...schönes Wochnende!
Moin!
wenn ich in meiner Datenbank für irgendeiner Zeile den Default wert setzte z.b alter table buch alter sprache set default "Deutsch";
Wird der Default bei einem NULL-Wert nicht angezeigt.Warum nicht?
Der Wert NULL steht nicht für "bitte Default-Wert annehmen", sondern ist ein eigenständiger Wert, der für "Kein Wert aus dem Wertebereich dieser Spalte angegeben" steht.
Beispiel:
Wenn man Temperaturen als Integer speichern will, und an einem Tag keine Temperatur eingetragen wurde, ist es unsinnig, dann "0" (0 Grad Celsius ist ja eine gültige Temperatur) oder extreme Werte (-999 Grad Celsius gibts zwar nicht, aber würde bei der Berechnung eines Durchschnittswerts natürlich trotzdem in die Rechnung eingehen) einzutragen. Mit NULL wird dieser Sachverhalt hingegen sofort klar.
Wenn du jetzt als Standardwert 20 (Grad Celsius) definierst, wird bei allen neuen Einträgen die 20 übernommen, wenn keine explizite Temperaturangabe im SQL-Insert steht. Die bestehenden NULL-Werte aber müssen zwingend erhalten bleiben, sonst würde sich ja dein Datenbestand ändern.
Standard ist, dass bei Feldern, die NULL erlauben, bei fehlender Wertangaben eben NULL eingetragen wird.
- Sven Rautenberg
echo $begrüßung;
Wird der Default bei einem NULL-Wert nicht angezeigt.Warum nicht?
Das ist so. Default-Werte werden nur dann verwendet, wenn gar kein anderer Wert angegeben ist. NULL ist bereits ein definierter Wert. Wenn du den Default-Wert haben möchtest musst du die Spalte im Insert-Statement auslassen.
echo "$verabschiedung $name";