Probleme beim Speichern eines Datums in einem Table
-
Hallo zusammen,
habe ein Problem beim Speichern eines Datums in einem Table. Das Datenfeld im Table hat den Typ DATE. Wenn ich ein Datum speicher, hat es folgenden Aufbau.
z.B. 16.09.2003. In dem Table schauts dann aber so aus: 2016-09-20
Woran liegt das?
MfGTobsen
-
schau dir mal an wie das date format aus sieht und dann vergleich es mit deinem format.
logisch das das nicht geht, oder?
The DATE type is used when you need only a date value, without a time part. MySQL retrieves and displays DATE values in 'YYYY-MM-DD' format. The supported range is '1000-01-01' to '9999-12-31'.
-
Speicher es doch einfach auch so, wie MySQL das will: 2003-09-16
-
hmmmm... stimmt, danke. Ist es denn auch sinnvoll innerhalb meines scripts mit diesem Format zu arbeiten und es nur für die Ausgabe zu formatieren. Ich meine, ist es möglich mit diesem Format Vergleichsoperationen durchzuführen?
-
hi, ich würde einfach den unix-timestamp speichern.
dann brauchst du nur einen int.
mit strftime() kannst du dann die zeit ausgeben, wie du gerade willst!
-
@tendor: also mit mktime datum erzeugen und dann in einem feld mit Datentyp int speichern?
-
genau.
die meisten funktionen geben ja auch sowieso schon einen timestamp zurück (time(), localtime(), etc).
-
Original erstellt von Tobsen:
hmmmm... stimmt, danke. Ich meine, ist es möglich mit diesem Format Vergleichsoperationen durchzuführen?aeshalb sieht das Format ja so aus. Wenn du das Datum sonst auf oder absteigend sortieren wölltest (mit SQL-Anweisung), käme was verkehrtes raus.