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

Làm thế nào để tránh đúng điều kiện Cuộc đua Mysql

Để đạt được điều này, bạn sẽ cần phải khóa bản ghi bằng cách nào đó. Thêm một cột Đã khóa bằng cách đặt mặc định là 0.

Khi ai đó nhấn nút, hãy thực hiện một truy vấn tương tự như sau:

CẬP NHẬT bảng SET LockedBy =WHERE LockedBy =0 và id =;

Sau khi cập nhật xác minh các hàng bị ảnh hưởng (trong php mysql_affected_rows). Nếu giá trị là 0, điều đó có nghĩa là truy vấn không cập nhật bất kỳ thứ gì vì cột LockedBy không phải là 0 và do đó bị người khác khóa.

Hy vọng điều này sẽ giúp



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tại sao giới hạn thời gian tối đa của MySQL là 838:59:59?

  2. xóa mysql, autoincrement

  3. sql kéo một hàng cho hàng tiếp theo hoặc hàng trước của hàng hiện tại

  4. Django - cài đặt lỗi mysqlclient:mysqlclient 1.3.13 hoặc mới hơn là bắt buộc; bạn có 0.9.3

  5. Kết nối với Cơ sở dữ liệu MySQL Trực tuyến bằng VB.Net