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

Hibernate menyimpan data basi dengan hibernate.jdbc.batch_versioned_data

Driver Oracle harus mengembalikan jumlah baris yang benar. Saya akan terkejut jika ini tidak terjadi. Apakah Anda dapat mengonfirmasi bahwa hasil dari driver sudah benar? Anda dapat mengaktifkan Hibernate logging untuk memeriksanya.

Beberapa hal yang perlu diperiksa:

  1. Catat SQL aktual yang dikirim ke DB dan periksa untuk melihat bahwa kolom versi disebutkan dalam klausa where. Tidak yakin apakah SQL dicatat oleh Hibernate logging dengan batching on, Anda mungkin harus menggunakan cara lain untuk mencatat SQL (mis., p6spy)

  2. Jika jumlah baris dikembalikan dengan benar selama pembaruan bersamaan, maka aplikasi berfungsi dengan baik. Konfirmasikan hal ini dengan memeriksa apakah nilai kolom versi yang diperbarui telah diperbaiki.

Perbarui Menurut tautan berikut, masalah ini telah ada dengan driver Oracle hingga 11g dan diperbaiki di versi 12c

https://hibernate.atlassian.net/browse/HHH-3360

Untuk versi Oracle sebelumnya ada beberapa informasi tambahan yang seharusnya berguna, yaitu, solusi khusus disediakan.

Referensi tambahan:https://hibernate.atlassian.net/browse/HHH-5070




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ambil gambar dari Oracle DB

  2. Groovy/Grails tidak dapat memuat Oracle.jdbc.driver.OracleDriver

  3. Pilih ke tabel sementara di Oracle

  4. Bagaimana cara menghindari regexp_replace di Oracle?

  5. Evaluasi malas dari pernyataan Oracle PL/SQL dalam klausa SELECT dari kueri SQL