「java.sql.Timestamp」にはタイムゾーン情報が保存されますか?
java.sql.Timestamp のタイムゾーンは固有ですか?
背景:
JDBC の setTimestamp( int patternIndex, Timestamp x) メソッドは、タイムゾーンを明示的に指定せずにデータベース列にタイムスタンプを追加します。ここで疑問が生じます: Timestamp はタイムゾーン情報を伝達しますか?
答え:
いいえ、java.sql.Timestamp は本質的にタイムゾーン情報を伝達しません。
説明:
通話時setTimestamp(...) を使用すると、JDBC ドライバーは、アプリケーションを実行している仮想マシンのタイムゾーンに基づいて、保存する日付と時刻を決定します。これは、保存された値にはタイムゾーン情報が保持されないことを意味します。
例:
次のシナリオを考えてみましょう:
- アプリケーションのタイムゾーン: インド標準時 (IST)
- データベースのタイムゾーン: IST
- タイムスタンプ値: "20121225 10:00:00 UTC"
この場合、ドライバーは UTC 時間を (仮想マシンのタイムゾーンに基づいて) IST に変換し、これを「20121225 12:00:00」として保存します。 Database.
特定のタイムゾーンでのタイムスタンプの保存:
特定のタイムゾーンでタイムスタンプを保存するには、setTimestamp(int patternIndex, Timestamp x, Calendar cal) メソッドを使用します。タイムスタンプがそれに応じて保存されるように、目的のタイムゾーンを持つ Calendar オブジェクトを指定します。
追加の考慮事項:
- 取得: getTimestamp(...) を使用してタイムスタンプを取得すると、ドライバーは仮想マシンのタイムゾーンを使用して値を解釈します。 Calendar オブジェクトが指定されている場合を除きます。
- java.time.LocalDateTime: JDBC 4.2 準拠のドライバーは、TIMESTAMP データの java.time.LocalDateTime をサポートします。これにより、タイムゾーンを変換せずにタイムスタンプを直接マッピングできます。
以上が「java.sql.Timestamp」にはタイムゾーン情報が保存されますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック







