Entwickler-Ecke
Datenbanken - Datum formatieren
OliverN_26 - So 23.10.11 13:04
Titel: Datum formatieren
Hallo
Da mir hier beim letzten Mal schon so gut geholfen wurde, hab ich noch einmal eine Frage, denn ich krieg es einfach nicht hin (MySQL).
Ich habe folgens Datum: Fri Sep 16 2011 13:00:00 GMT+0200
Das soll so aussehen: 2011-09-16 13:00:00
Danke :-)
Achso .. ich sollte evt. noch erwähnen das ich einen MySQL-UPDATE machen will.
Also "UPDATE table SET datum = formatiertes_datum"
Yogu - So 23.10.11 22:30
OliverN_26 hat folgendes geschrieben : |
"UPDATE table SET datum = formatiertes_datum" |
Das sieht aber irgendwie nach unsauberem Datenbank-Design aus. In der Tabelle sollten doch die MySQL-Datumstypen (in dem Fall wohl
DATETIME) verwendet werden, und keine formatierten Strings. Die Formatierung macht man eigentlich frühestens in der SELECT-Klausel (dort mit
STR_TO_DATE), wenn nicht erst im Programm.
OliverN_26 hat folgendes geschrieben : |
Ich habe folgens Datum: Fri Sep 16 2011 13:00:00 GMT+0200 |
Das hast du im Programm, oder liegt es in der Datenbank?
Um mit Zeitzonen richtig umgehen zu können, muss man eigentlich nur einen Grundsatz beachten: Bei der Initialisierung der Datenkbank-Verbindung sollte die Zeitzone gesetzt werden, die auch verwendet wird. Das heißt, wenn man dort die lokale Zeitzone wählt, sollten die Daten auch in der lokalen Zeitzone eingefügt werden. Intern werden sie dann als UTC+00 gespeichert. Wenn du sie auslesen willst, musst du wiederum die Zeitzone richtig einstellen, und du bekommst sie in der gewünschten.
OliverN_26 - So 23.10.11 23:13
Ich hab das Datum in einem Javascript und wandel es nun wie folgt um:
Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| T = D.start_date; U = T.getYear(); V = T.getMonth()+1; W = T.getDate(); X = T.getHours(); Y = T.getMinutes(); Z = T.getSeconds(); if (W < 10) W = "0" + W; if (V < 10) V = "0" + V; if (X < 10) X = "0" + X; if (Y < 10) Y = "0" + Y; if (Z < 10) Z = "0" + Z; if (U < 1000) U+=1900; var datum = U + '-' + V + '-' + W + ' ' + X + ':' + Y + ':' + Z; alert(datum); |
Läuft so. Gibts das noch schöner oder is das die "ultimative" Lösung?
Danke
baka0815 - Mo 24.10.11 13:10
Gibt es einen Grund warum du nicht mit Parametern arbeitest?
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!