Maison > Article > base de données > Suggestions pour MySQL sur la sauvegarde des informations de temps
J'ai vu sur Internet que certains internautes ont déclaré que lors du processus de vérification des données statistiques avec le SP en Inde récemment, ils avaient découvert qu'il y avait un problème de fuseau horaire dans les données statistiques. Cet article aborde principalement les problèmes ci-dessus. L'interface qu'il fournit à l'autre partie pour obtenir les résultats statistiques d'une date spécifiée est contrôlée en fonction du fuseau horaire de la Chine. Heureusement, l'horodatage international est stocké dans la base de données, il vous suffit donc de déterminer le fuseau horaire de l'appelant au niveau de l'interface pour obtenir les informations de résultat statistique correctes.
La référence de la solution est la suivante, c'est-à-dire que, sur la base de l'objet SimpleDateFormat, il est nécessaire de clarifier le fuseau horaire actuel qui doit être utilisé.
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));
L'utilisation de la méthode ci-dessus peut en fait résoudre le problème du fuseau horaire, car j'ai obtenu les statistiques via le tableau des heures. Et la table horaire contient un enregistrement par heure. Le fuseau horaire indien est GMT+5:30. Sur la base de la structure actuelle du tableau, il y aura un problème d'écart de données d'une demi-heure. Par conséquent, afin de résoudre ce problème, nous modifions la granularité statistique du tableau horaire à une demi-heure. heure.
Résumé :
Ce blog indique simplement les points clés de la solution de fuseau horaire. Le prérequis pour utiliser cette solution est que la base de données stocke les horodatages internationaux ! ! !
Uniquement le stockage de l'heure basé sur des horodatages absolus, il n'y a aucun problème de fuseau horaire ! ! ! Le fuseau horaire n'est qu'un problème d'affichage ! ! !
Un peu de progrès chaque jour~
[Cours recommandé : Tutoriel vidéo MySQL]
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!