Heim  >  Artikel  >  Datenbank  >  Vorschläge für MySQL zum Speichern von Zeitinformationen

Vorschläge für MySQL zum Speichern von Zeitinformationen

little bottle
little bottlenach vorne
2019-04-10 13:36:242152Durchsuche

Ich habe im Internet gesehen, dass einige Internetnutzer sagten, dass sie kürzlich bei der Überprüfung statistischer Daten mit der SP in Indien festgestellt hätten, dass es in den statistischen Daten ein Zeitzonenproblem gebe. Dieser Artikel befasst sich hauptsächlich mit den oben genannten Problemen. Die Schnittstelle, die er der anderen Partei zur Verfügung stellt, um die statistischen Ergebnisse eines bestimmten Datums zu erhalten, wird entsprechend der chinesischen Zeitzone gesteuert. Glücklicherweise ist der internationale Zeitstempel in der Datenbank gespeichert, sodass Sie nur die Zeitzone des Anrufers an der Schnittstelle ermitteln müssen, um die korrekten statistischen Ergebnisinformationen zu erhalten.

Die Lösungsreferenz lautet wie folgt: Basierend auf dem SimpleDateFormat-Objekt muss die aktuelle Zeitzone angegeben werden, die verwendet werden muss.

SimpleDateFormat.setTimeZone(TimeZone);

// Java:
long timeMs = System.currentTimeMillis();
System.out.println("long = " + timeMs);

// current time zone
SimpleDateFormat default = new SimpleDateFormat("yyyy-MM-dd HH:mm");
System.out.println(default.format(timeMs));

// +8:00 time zone
SimpleDateFormat chinaFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
chinaFormat.setTimeZone(TimeZone.getTimeZone("GMT+8:00"));
System.out.println("GMT+8:00 = " + chinaFormat.format(timeMs));

// +5:30 time zone
SimpleDateFormat indiaFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
indiaFormat.setTimeZone(TimeZone.getTimeZone("GMT+5:30"));
System.out.println("GMT+5:30 = " + indiaFormat.format(timeMs));

Die Verwendung der obigen Methode kann das Zeitzonenproblem tatsächlich lösen, da ich die Statistiken über die Stundentabelle und die Stunde erhalten habe Die Tabelle hat einen Datensatz pro Stunde. Die indische Zeitzone ist GMT+5:30, es wird ein halbstündiges Datenabweichungsproblem geben. Um dieses Problem zu lösen, ändern wir die statistische Granularität der Stundentabelle Stunde.

Zusammenfassung:

In diesem Blog werden lediglich die wichtigsten Punkte der Zeitzonenlösung dargelegt. Voraussetzung für die Verwendung dieser Lösung ist, dass die Datenbank internationale Zeitstempel speichert! ! !

Nur Zeitspeicherung basierend auf absoluten Zeitstempeln, es gibt überhaupt kein Zeitzonenproblem! ! ! Die Zeitzone ist nur ein Anzeigeproblem! ! !

Jeden Tag ein kleiner Fortschritt~

[Empfohlener Kurs: MySQL-Video-Tutorial]

Das obige ist der detaillierte Inhalt vonVorschläge für MySQL zum Speichern von Zeitinformationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen