Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Khóa cấp bảng ở chế độ Hibernate

"Chọn ... để cập nhật" được hỗ trợ trong Hibernate qua LockMode.UPGRADE mà bạn có thể đặt trong đó, chẳng hạn như NamedQuery .

Tuy nhiên, việc sử dụng ứng dụng / khóa hàng bảng thủ công có một số hạn chế (đặc biệt là khi kết nối cơ sở dữ liệu bị hỏng giữa một nửa giao dịch) và quy trình cập nhật của bạn có thể thực hiện mà không có nó:

  • Bắt đầu giao dịch.
  • cập nhật tập hợp bảng state ='PENDING', server_id =1 where state ='IN PROGRESS';
  • Giao dịch cam kết
  • chọn từ bảng trong đó state ='PENDING' và server_id =1;
  • [hồ sơ quy trình]

Mỗi máy chủ phải có một số duy nhất để điều này hoạt động, nhưng nó sẽ ít bị lỗi hơn và bạn để DBMS làm những gì nó được cho là tốt:cô lập (xem ACID ).




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mệnh đề tương đương CHỈ TRONG () MySQL

  2. Cuộn vô hạn với dữ liệu MySQL

  3. iptables:Sao chép / Cổng chuyển tiếp

  4. Chèn ngày vào MySql bằng c #

  5. Tìm kiếm FULLTEXT trong MySQL (Windows10) với các bảng MyISAM không hoạt động