Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Mengapa pembaruan massal templat hibernasi ini tidak berfungsi

Dokumentasi hibernasi mengatakan:

  • Tidak ada gabungan, baik implisit maupun eksplisit, yang dapat ditentukan dalam kueri HQL massal. Sub-kueri dapat digunakan dalam klausa where, di mana subkueri itu sendiri mungkin berisi gabungan.

Jadi, Anda perlu mengganti gabungan implisit dengan subquery yang setara:

getHibernateTemplate().bulkUpdate(
   "update Address address set address.preferred = 1 " +
   "where address.user in (select u from User u where u.language = ?)",
   "en"); 



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengembalikan hasil bahkan untuk elemen dalam daftar IN yang tidak ada di tabel

  2. Tampilan Terwujud vs. Tabel:Apa kelebihannya?

  3. Tentang Elemen Format RM di Oracle

  4. Perbedaan antara VARCHAR2(10 CHAR) dan NVARCHAR2(10)

  5. Menggunakan Dapper dengan prosedur tersimpan Oracle yang mengembalikan kursor