MySQL-Datenzeitfelder und Sommerzeit - wie beziehe ich mich auf die „zusätzliche“ Stunde?

Ich verwende die Zeitzone Amerika / New York. Im Herbst "fallen" wir eine Stunde zurück - effektiv "gewinnen" wir eine Stunde um 2 Uhr morgens. Am Übergangspunkt passiert Folgendes:

Es ist 01:59:00 - 04:00 Uhr
dann 1 Minute später wird es:
01:00:00-05: 00

Wenn Sie also einfach "1:30 Uhr" sagen, ist es zweideutig, ob Sie sich auf das erste Mal beziehen, wenn 1:30 Uhr herumläuft, oder auf das zweite Mal. Ich versuche, Planungsdaten in einer MySQL-Datenbank zu speichern, und kann nicht feststellen, wie die Zeiten ordnungsgemäß gespeichert werden sollen.

Hier ist das Problem:
"2009-11-01 00:30:00" wird intern als 2009-11-01 00:30:00 -04: 00 gespeichert
"2009-11-01 01:30:00" wird intern als 2009-11-01 01:30:00 gespeichert-05: 00

Dies ist in Ordnung und ziemlich zu erwarten. Aber wie speichere ich etwas bis 01:30:00-04: 00? DasDokumentation zeigt keine Unterstützung für die Angabe des Offsets und wurde dementsprechend, wenn ich versucht habe, den Offset anzugeben, ordnungsgemäß ignoriert.

Die einzige Lösung, die ich mir überlegt habe, besteht darin, den Server auf eine Zeitzone einzustellen, in der keine Sommerzeit anfällt, und die erforderlichen Transformationen in meinen Skripten vorzunehmen (ich verwende dafür PHP). Aber das scheint nicht notwendig zu sein.

Vielen Dank für alle Anregungen.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage