とjava.sql.Date()
mysql コマンドの sysdate は正確に同じ日時を与えますか?
質問する
2743 次
3 に答える
1
このSYSDATE
関数は、データベース サーバーの日付と時刻を返します。は特定のjava.sql.Date
日付を与えません。特定の日付に初期化する必要があり、時刻ではなく日付のみを保存します。(内部的には時間コンポーネントも保存されますが、意味がないので無視することになっています。java.sql.Date
)
date = new java.sql.Date(System.getCurrentTimeMillis());
または同等のもので、データベースが別のマシンで実行されているSYSDATE
場合、2 つのマシンの時計が同期していないと、呼び出したときに異なる日付が返されることがあります。
于 2013-07-26T10:39:18.480 に答える
1
sysdate
DBシステムでコマンドを実行します。DBサーバーのシステム日付が表示されます。
java.sql.Dateは、JDBC がこれを SQL DATE 値として識別できるようにするミリ秒値の薄いラッパーです。それは異なります。これは、SQL 日付とインターフェースをとる Java オブジェクトです。JDBC ドライバーは、java.sql.Date
オブジェクトを使用し、そのデータを受け入れ可能な形式にフォーマットし、DB に格納します。逆もまた同様です。
それ自体では、何らかのデータを入力するまで日付を取得できず、年、月、日が保存されますが、時、分、秒、およびミリ秒は無視されます。
于 2013-07-26T10:39:40.273 に答える