sql >> データベース >  >> RDS >> Mysql

MySQL日時が時刻を返さない

    Thomasのコメントで提案されているように、getTime()またはgetTimestamp()メソッドを使用する必要があります。ただし、例を挙げると...

    次のようにクエリするテーブルの場合:rs = stmt.executeQuery("select timeCol, dateCol, dateTimeCol from dateTimeTable");

    あなたができること:

    java.sql.Time dbSqlTime = rs.getTime(1);
    java.sql.Date dbSqlDate = rs.getDate(2);
    java.sql.Timestamp dbSqlTimestamp = rs.getTimestamp(3);
    

    Java日付オブジェクトを使用する場合:

    java.util.Date dbSqlTimeConverted = new java.util.Date(dbSqlTime.getTime());
    java.util.Date dbSqlDateConverted = new java.util.Date(dbSqlDate.getTime());
    

    JodaTime もチェックします。 JavaでDatesを操作するために、作業がはるかに簡単になります。

    最後に、MySQLのTimestampとDateTimeにはいくつかの違いがあることに注意してください。つまり、タイムスタンプにはタイムゾーンがあり、サーバーは照会されたタイムスタンプをサーバーの現地時間で返します(これは煩わしい場合があります)。私のアドバイスは、DateTimeを使用し、日付/時刻を常に同じタイムゾーン(つまり、UTC)に保つことです。 http://dev.mysql.com/doc/refman/を参照してください5.0 / en / datetime.html



    1. 同じHibernateトランザクションでネイティブSQLクエリを実行するにはどうすればよいですか?

    2. PHP/MySQLを使用したCSVデータのインポート

    3. MySQLエラー-#1062-キー2の重複エントリ''

    4. 致命的なエラー:未定義の関数mysqli_result()の呼び出し