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

SQL Server - [CHỌN] có khóa [CẬP NHẬT] không?

Có - ở một mức độ nào đó.

Bao lâu một SELECT giữ khóa dùng chung tùy thuộc vào mức độ cô lập của giao dịch:

  • READ UNCOMMITTED - không có khóa dùng chung nào được lấy - UPDATE không bị chặn
  • READ COMMITTED - khóa chia sẻ được lấy chỉ trong khoảng thời gian đọc dữ liệu - UPDATE có thể bị chặn trong một khoảng thời gian rất ngắn
  • REPEATABLE READSERIALIZABLE - khóa chia sẻ được mua và giữ cho đến khi kết thúc giao dịch - UPDATE bị chặn cho đến khi SELECT giao dịch kết thúc

Về mặt kỹ thuật, UPDATE đầu tiên câu lệnh nhận được một UPDATE khóa - tương thích với khóa dùng chung (như được sử dụng bởi SELECT ) - trong khoảng thời gian trong khi nó đang đọc các giá trị hiện tại của các hàng sẽ được cập nhật.

Sau khi hoàn tất, hãy Update khóa được nâng cấp thành khóa độc quyền để dữ liệu mới được ghi vào 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. TSQL PIVOT NHIỀU CỘT

  2. Làm cách nào để kiểm tra xem một chuỗi có phải là mã định danh duy nhất hay không?

  3. SQL Server:Làm cách nào để lưu trữ dữ liệu nhị phân (ví dụ:tệp Word)?

  4. Ngoại lệ SQL khó chịu, có thể do một số mã được thực hiện sai

  5. Lệnh SQL INSERT đang hoạt động nhưng dữ liệu không xuất hiện trong bảng