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

Hibernate penguncian optimis..bagaimana cara kerjanya?

Tepatnya, Anda tidak bermaksud penguncian optimis, tetapi konkurensi optimis (tanpa kunci). Menggunakan stempel waktu untuk versi hanya untuk dukungan basis data lama, karena basis data modern dapat (setidaknya secara teoritis) bekerja lebih cepat daripada akurasi penyimpanannya stempel waktu.

Menggunakan properti versi integer sangat sederhana:

  • Saat disisipkan:setel versi ke 1
  • Saat memperbarui dan menghapus:tingkatkan versi dengan 1 dan tambahkan "where [email protected] " ke setiap pernyataan sql. Kembalikan jumlah record yang diubah. Lempar StaleObjectStateException saat jumlah record yang diubah berbeda dari yang diharapkan.

Secara pribadi, saya tidak akan membuat dua aplikasi terpisah yang menulis data yang sama dalam situasi non-warisan, karena itu berarti logika bisnis harus diduplikasi dan perubahan harus diterapkan ke dua aplikasi, juga ketika perubahan hanya relevan untuk satu dari aplikasi.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara BERGABUNG dengan tabel kategori untuk orang tua dalam kueri SQL?

  2. MySQL tidak mendukung klausa batas di dalam subpilihan, bagaimana saya bisa melakukannya?

  3. Bagaimana saya bisa melindungi nama pengguna dan kata sandi MySQL dari dekompilasi?

  4. BoneCP penggunaan yang benar

  5. Meningkatkan Kinerja MySQL pada Query Run-Once dengan Dataset Besar