Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Tanggal waktu MySQL tidak mengembalikan waktu

Anda perlu menggunakan metode getTime() atau getTimestamp() seperti yang disarankan dalam komentar oleh Thomas. Namun untuk memberikan contoh...

Katakanlah untuk tabel yang Anda kueri seperti ini:rs = stmt.executeQuery("select timeCol, dateCol, dateTimeCol from dateTimeTable");

Anda dapat melakukan:

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

Jika Anda ingin menggunakan objek tanggal Java:

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

Saya juga akan memeriksa JodaTime untuk bekerja dengan Dates di Java, membuat hidup lebih sederhana.

Akhirnya, perlu dicatat bahwa ada beberapa perbedaan antara Timestamp dan DateTime di MySQL. Yaitu bahwa Timestamp memiliki zona waktu dan server akan mengembalikan Timestamp yang ditanyakan dalam waktu lokal Server (yang dapat mengganggu). Saran saya adalah menggunakan DateTime dan selalu menyimpan tanggal/waktu di zona waktu yang sama (yaitu UTC). Lihat http://dev.mysql.com/doc/refman/ 5.0/en/datetime.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PILIH dan daftarkan anak dan orang tua

  2. PDO SQL-state 00000 tapi masih error?

  3. Pesan berdasarkan tanggal (varchar)?

  4. Tidak dapat melihat nilai bidang MySQL BIT saat menggunakan SELECT

  5. bagaimana cara membersihkan file konfigurasi cache Laravel Bootstrap?