異なる国の複数のユーザーの詳細を保存する必要があります。 DBに日付を(UTC形式で)保存するにはどうしたらいいですか?どのようにタイムゾーンに合わせてユーザーに日付を表示できますか? 私はJavaとmySQLを使用しています。Javaで複数のタイムゾーンを扱う
1
A
答えて
0
MySQLでは、テーブルにTIMESTAMP
データ型を使用します。
各ユーザーに対して、timezone
列を格納します。VARCHAR(64)
は、その列の適切なデータ型です。ユーザーがシステムに登録すると、タイムゾーンの値を尋ねます。鉱山はAmerica/New_York
です。あなたのものはAsia/Kolkata
かもしれません。このユーザー設定のユーザーインターフェイスには、WordPress.orgソフトウェアが良い例です。
SET SESSION time_zone='(whatever tz string the user gave you)'
をお使いのDBMSへのJavaプログラムからの接続を確立するたびに最後に
、。
これにより、テーブルに入るすべての時間がUTCに変換され、すべての時間がローカルに変換されます。 NOW()
とCURDATE()
で正しく動作します。ここでも、TIMESTAMP
を使用し、DATETIME
またはDATE
のデータ型を使用しないでください。
サーバーのOSとデフォルトのMySQLタイムゾーンがUTCに設定されていることを確認してください。情報をデータベースにロードする前にこれを行わなければ、修正することはほとんど不可能です。ベンダーを使ってMySQLを稼動させる場合、ベンダーにはこの権利があると主張し、ベンダーに適切な権限を与えていなければ発動します。
+0
お返事ありがとうございます。私はこれらのステップを実装しようとします。 –
関連する問題
- 1. 複数のタイムゾーンを処理する複数のタイムゾーンを扱う
- 2. Javaで複素数を扱うには?
- 3. 複数のAVAudioPlayersを扱う
- 4. 複数のUserControlsを扱う
- 5. 複数のプロジェクトを扱う
- 6. 複数のリストタイプを扱う
- 7. 複数のカレンダーを扱う
- 8. 複数のJFramesを扱う
- 9. 複数のmodels.pyをalembicで扱う
- 10. SFMLで複数のクライアントソケットを扱う
- 11. symfony3で複数のポータルを扱う
- 12. 複数のタブをハッシュバンで扱う
- 13. angularjsで複数のナビゲーションバーを扱う
- 14. CMakeで複数のプロジェクトを扱う
- 15. async_acceptで複数のクライアントを扱う
- 16. CakePHPで複数のURL値を扱う
- 17. セジソンで複数のカートを扱うPHP
- 18. Outlookで複数のカレンダーを扱う
- 19. Java:複数のバージョンのXMLスキーマを扱う
- 20. PHP扱う複数のチェックボックス
- 21. 複数のデータレイヤーを複数のクラスで扱う
- 22. Laravel-ピボットテーブルの複数のチェックボックスを扱う
- 23. 複数のファイルを扱うPythonのマルチプロセッシング
- 24. 複数のプラットフォームの実装を扱う
- 25. Matlabの複数の画像を扱う
- 26. 複数のSDカードスロットを扱う方法
- 27. 複数のNSTimerを扱うには?
- 28. Nodejs - 複数の配列を扱う
- 29. 複数ページのJSONとTableViewを扱う?
- 30. 複数のファイルを扱うVBA-
Java 8を使用するソリューションはありますか? –
http://stackoverflow.com/questions/12487125/java-how-do-you-convert-a-utc-timestamp-to-local-time – Anptk
時刻をタイムゾーン[JodaTime](http ://stackoverflow.com/questions/19002978/in-joda-time-how-to-convert-time-zone-without-changing-time)が最善の策です。 – Thiefster