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

Bagaimana membandingkan tanggal menggunakan antar klausa dalam hibernate

Anda harus menggunakan parameter HQL alih-alih menggabungkan.

Ambil contoh ini:

Map<String, Object> parameterNameAndValues = new HashMap<String, Object>();

Date startDate;
Date endDate;

// Assign values to startDate and endDate

parameterNameAndValues.put("startDate", startDate);
parameterNameAndValues.put("endDate", endDate);

String hqlQuery = "FROM EntityName WHERE fechaInicio BETWEEN :startDate AND :endDate";

Query query = this.sessionFactory.getCurrentSession().createQuery(hqlQuery);

for (Entry<String, Object> e : parameterNameAndValues.entrySet()) {
    query.setParameter(e.getKey(), e.getValue());
}

return query.list();

Ini akan mengikat parameter tanggal dan hibernasi akan membuat konversi yang diperlukan agar Anda menghindari pemeriksaan dan kesalahan kewarasan. Ingatlah bahwa meskipun MySQL menyimpan objek Date dalam format itu, database lain mungkin tidak dan itu akan merusak bantuan Hibernate.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jenis atau nama namespace 'MySqlConnection' tidak dapat ditemukan (apakah Anda melewatkan petunjuk penggunaan atau referensi Majelis?)

  2. Bagaimana cara membuat file konfigurasi global?

  3. django.db.utils.OperationalError:(2026, 'kesalahan koneksi SSL:SSL_CTX_set_tmp_dh gagal')

  4. mysqlfailover:Tidak ada modul bernama mysql.utilities.common.tools

  5. Apakah penurunan harga (dengan strip_tags) cukup untuk menghentikan serangan XSS?