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

Tại sao lựa chọn này cho ví dụ cập nhật hoạt động?

Tôi nghĩ rằng hành vi mong đợi là một chút sai lệch. Trước khi db_slow cam kết, tất cả các hàng trong bảng đều bị khóa. Sau khi nó cam kết, có hai hàng. db_fast được bỏ chặn khi db_slow cam kết. Do đó, hành vi là:

  1. db_slow:chọn hàng 1 và khóa hàng
  2. db_slow:thấy rằng nó chỉ có 1 hàng và đợi
  3. db_fast:thử chọn hàng 1, thấy hàng bị khóa, hãy đợi
  4. db_slow:chèn hàng bằng '2'
  5. db_slow:cam kết
  6. db_fast:bỏ chặn và đọc 2 hàng
  7. db_fast:không làm gì cả
  8. Kết thúc bằng foo:1, 2



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cập nhật cột trong cơ sở dữ liệu nơi có giá trị tối đa php mysql

  2. Sự khác biệt giữa mệnh đề where và and trong tham gia truy vấn sql

  3. Giá trị mặc định của MySQL dựa trên chế độ xem

  4. hướng dẫn làm khóa chính?

  5. Dữ liệu không được lưu trữ bằng các câu lệnh chuẩn bị