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

Câu lệnh SQL Server SELECT gây ra chặn

SELECT có thể chặn các bản cập nhật. Một mô hình dữ liệu và truy vấn được thiết kế phù hợp sẽ chỉ gây ra sự chặn tối thiểu và không phải là một vấn đề. Gợi ý 'thông thường' VỚI NOLOCK hầu như luôn là câu trả lời sai. Câu trả lời thích hợp là điều chỉnh truy vấn của bạn để nó không quét các bảng lớn.

Nếu truy vấn không thể truy xuất được thì trước tiên bạn nên xem xét Cấp độ ISOLATION của SNAPSHOT , thứ hai, bạn nên xem xét sử dụng TẠP CHÍ CƠ SỞ DỮ LIỆU và tùy chọn cuối cùng phải là DIRTY READS (và tốt hơn là thay đổi mức độ cô lập thay vì sử dụng NOLOCK HINT). Lưu ý rằng các lần đọc bẩn, như tên đã nêu rõ, sẽ trả về dữ liệu không nhất quán (ví dụ:tổng trang tính của bạn có thể không cân bằng).



  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ổng cộng dồn trong máy chủ MS Sql

  2. Sự cố với câu lệnh CASE trong quy trình được lưu trữ trên máy chủ sql

  3. Cập nhật bản ghi trong bảng từ CTE

  4. Phiên bản mới nhất của SQL Server, Phiên bản &Lịch sử Máy chủ SQL

  5. Làm thế nào để cắt một chuỗi trong SQL Server trước năm 2017?