2016-08-22 12 views
2

私たちは、さまざまなタイムゾーンにある差分ソースからデータが送信される異なる種類のファイル(xml、csv、excel)を処理しています。たとえば、インド、オーストラリア、ヨーロッパ(イギリス、フランスなど)、米国、アフリカなどと言えば、データを送信したときには、タイムゾーンで日付と時刻がわかります。これらのサーバーは米国ESTのみにあります。oracle dbのタイムゾーンを使用してdatetimeを保存するにはどうすればよいですか?

これらの日時をデータベースのタイムゾーンに保存するベストプラクティスは何ですか?また、レポートを生成するときに、その国に基づいてレポートを使用できますか?

JodaTimeライブラリを使用しています。私たちが使用する他の技術は、JAXB for xml parsingとspringベースのアプリケーションでファイルを処理し、データをdbに格納します。 Java 7を使用しているため、JDK 8の日付ライブラリを使用することはできません。

答えて

0

ベストアプローチはDateTimeUTCに保存することです。別の列にTimezoneを保管してください(ユースケース+05:00または国名などに従います)。したがって、取得中は、保存されたタイムゾーンに従ってオフセットを適用します。

この場合、Day light Savingsなども考えられます。

オラクルで

TIME ZONE WITHオプションTIMESTAMPをチェック

Link

+0

Viswanathあなたの応答をありがとうございました。しかし、私は私の質問ではっきりしていないと思う。私たちは、TZをdiff colと処理日に格納しなければならない場所を処理したくありません。とにかく、私たちは単一の列でタイムゾーンでdatetimeを保存することができますか?そして、json/textファイルレポートを選択して生成すると、保存されたタイムゾーンで日付が与えられますか? – user509755

+0

はい私はそれを最後に追加しました。タイムゾーンとタイムスタンプ。それを確認してください:) –

関連する問題