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

SimpleDateFormatter.parse memberikan output dalam format yang berbeda dari yang ditentukan

Jangan berikan tanggal sebagai string ke database MySQL Anda. Lebih baik, lebih mudah dan lebih aman untuk melewatkan objek tanggal. Untuk satu hal, ini membebaskan Anda dari pemformatan dan masalah pemformatan apa pun. Terbaik, lewati instance kelas dari java.time , API tanggal dan waktu Java modern. Dalam kasus Anda LocalDateTime akan melakukannya.

    String ep ="a1527069600";
    long epoch = Long.parseLong(ep.substring(1));
    Instant inst = Instant.ofEpochSecond(epoch);
    LocalDateTime ldt = inst.atZone(ZoneId.of("Asia/Calcutta")).toLocalDateTime();

    System.out.println(ldt);

    PreparedStatement ps = myDatabaseConnection.prepareStatement(
            "insert into my_table (my_date_time) values (?)");
    ps.setObject(1, ldt);

LocalDateTime diperoleh adalah:

Saya sedikit menyederhanakan konversi Anda dari string Epoch. Gunakan huruf kecil long primitive yang primitif daripada Long obyek. Saya menggunakan zona waktu Anda, Asia/Kalkuta, dengan asumsi bahwa nilai basis data Anda berada di zona waktu ini. Rekomendasi normal adalah untuk menjaga nilai basis data dalam UTC, setidaknya jika ada kemungkinan data akan digunakan di luar zona waktu Anda. Jika Anda menginginkan ini, gunakan konversi ini alih-alih yang di atas:

    LocalDateTime ldt = inst.atOffset(ZoneOffset.UTC).toLocalDateTime();

Tautan: Tutorial Oracle:Tanggal Waktu menjelaskan cara menggunakan java.time .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menghitung jarak (pythagoras) dan jumlah lari dalam kueri sql

  2. Migrasi Laravel - Pelanggaran batasan integritas:1452 Tidak dapat menambah atau memperbarui baris anak:batasan kunci asing gagal

  3. Membuat tabel dengan nama variabel php mysql

  4. Masukkan data Arab ke database mysql

  5. Hapus kumpulan hasil kueri SQL