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

ANTARA kueri menggunakan JDBC dengan MySQL

Di MySQL, DATE ketik peta ke kelas Java java.sql.Timestamp . Jadi Anda harus bekerja dengan tipe ini untuk membuat kueri Anda, dan bukan java.util.Date . Berikut adalah kode yang menghasilkan dua stempel waktu yang Anda perlukan:

SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
java.util.Date startDate = formatter.parse(startDate);
java.util.Date endDate   = formatter.parse(endDate);

java.sql.Timestamp start = new Timestamp(startDate.getTime());
java.sql.Timestamp end   = new Timestamp(endDate.getTime());

Kemudian gunakan BETWEEN pertama Anda kueri untuk mendapatkan hasil Anda:

PreparedStatement ps = con.prepareStatement("SELECT * FROM project.order
                                             WHERE PO_Date BETWEEN ? AND ?");
ps.setTimestamp(1, start);
ps.setTimestamp(2, end)

Perhatikan di sini bahwa saya menggunakan PreparedStatement parametrized , yang menghindari (atau setidaknya sangat mengurangi) kemungkinan injeksi SQL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menginstal MySQL-python

  2. Menyembunyikan Kredensial MySQL di Aplikasi

  3. Adakah yang bisa merekomendasikan tutorial yang bagus tentang indeks MySQL, khususnya ketika digunakan dalam urutan demi klausa saat bergabung?

  4. Integer yang salah (2147483647) dimasukkan ke MySQL?

  5. Bagaimana cara memperbaiki tabel 'mysql.user' xampp yang rusak?