web-dev-qa-db-ja.com

Oracle DATEとTIMESTAMPの違い

OracleのDATE型とTIMESTAMP型の違いは何ですか?両方に日付と時刻のコンポーネントがありますか?また、これらの日付型に対応するJavaの型は何ですか?

72
supernova

DATEとTIMESTAMPは同じサイズ(7バイト)です。これらのバイトは、世紀、10年、年、月、日、時、分、秒を格納するために使用されます。ただし、TIMESTAMPでは、秒の小数部(11バイト)やタイムゾーンの秒の小数部(13バイト)などの追加情報を保存できます。

TIMESTAMPは、Oracleに準拠したANSIとして追加されました。それ以前は、DATEのみでした。

通常、DATEを使用する必要があります。ただし、時間の精度が必要な場合は、TIMESTAMPを使用します。

また、Java(Oracle JDBCドライバーのOracle.sql.DATEクラス)は、Oracle Date/Timestampデータ型とJavaクラスJava.sql.Date、Java.sql.Time、およびJava.sql間の変換を提供しますタイムスタンプ。

79
Guillermo Luque