1

コンストラクターでミリ秒のみを指定して SQL タイム スタンプを作成する場合、どのタイム ゾーンが使用されますか? また、タイプのOracleデータベース列にUTCまたはローカル・タイム・ゾーンのどちらを書き込むかを選択する方法はTIMESTAMP(6) WITH LOCAL TIME ZONE?

4

1 に答える 1

2

Timestamp(int year, int month, int date, int hour, int minutes, int second, int nano)

タイムスタンプ (長時間) - 時間 - 1970 年 1 月 1 日 00:00:00 GMT からのミリ秒。負の数は、1970 年 1 月 1 日 00:00:00 GMT までのミリ秒数です。

タイムスタンプにタイムゾーンはありません

一般に、タイムゾーンが想定される場合、それは jvm default (システムのデフォルト) になります。

オラクルのデータ型は別の獣です

見る

SQL DATE と java.sql.Date のタイムゾーン

Oracle 10g のタイム ゾーンの混乱- 3 つのタイム ゾーンが関係しています

データベースを操作する場合は、Calendar または java.sql.Date を使用してください

Oracleドライバー(およびSQL開発者)は、(そのスマートな)日付をjvmタイムゾーン(または厳密に言えば、セッションタイムゾーン)から必要なものに変換する場合があります

-alter session set time_zone... でセッションのタイムゾーンを変更できます Oracle で SYSDATE の UTC 値を取得する方法

あなたがしていることに注意してください

10個の異なるテストケースを書く

このブログもいいですねhttp://tonyhasler.wordpress.com/2010/09/04/tonys-tirade-against-timestamp-with-time-zone/

于 2014-09-30T14:17:25.423 に答える