Seite 1 von 1

Default Datumswerte '0000-00-00 00:00:00' - warum?

Verfasst: Mo 23. Jul 2007, 10:30
von knb
In viele Tabellen in Contenidos Myssql DB wird stets als Defaultwert '0000-00-00 00:00:00' eingetragen. Ich bin mir nicht sicher nicht, ob dies ein valides Datumsformat ist. Spricht irgendwas dagegen dieses Datumsformat auf einen gültigen Wert zu setzen? (Manuell für bestimmte Tabellen.) Wenn ja, welchen?

Würde es Contenido-funktionalität stören (gibt es zB irgendwelche Algorithmen die darauf abprüfen dass der Datumswert genau 0000* ist ?


Bisher war dieses Verhalten, Datumsspaltenwerte auf 000-* zu setzen völlig unkritisch. Nur ich habe gemerkt, wenn ich mit bestimmten frontends auf die Tabelle zugreifen will, dann kann ich mir den Inhalt nicht anzeigen lassen. Es kommt eine Dialogbox mit dem Hinweis auf ungünstiges Datumsformat '0000-00-00 00:00:00' in Spalte X , und das Daten Fenster bleibt leer. Dies Gilt z.B. für das Quantum DB Eclipse plugin.

Verfasst: Mo 23. Jul 2007, 13:24
von HerrB
Dann hat das Tool ein Problem...
Ich bin mir nicht sicher nicht, ob dies ein valides Datumsformat ist.
Sure: http://dev.mysql.com/doc/refman/4.1/en/datetime.html

Zwischen den mySQL-Versionen wird das dann auch noch unterschiedlich gehandhabt - in einigen mySQL-Versionen entspricht '0000-00-00 00:00:00' NULL (select * from table where date IS NULL), bei anderen kann man die "zero"-Werte z.B. über einen String-Vergleich ermitteln (e.g. select * from table where date like '0000-00-00%').

Gruß
HerrB