適用於:SQL Server
詳細資料
| 屬性 | 值 |
|---|---|
| 產品名稱 | SQL Server |
| 事件識別碼 | 601 |
| 事件來源 | MSSQLSERVER |
| 元件 | SQLEngine |
| 符號名稱 | |
| 訊息文字 | 由於資料移動而無法繼續用 NOLOCK 掃描。 |
說明
SQL Server 資料庫引擎無法繼續執行查詢,因為它正嘗試讀取其他交易更新或刪除的數據。 查詢使用 NOLOCK 鎖定提示或 READ UNCOMMITTED 交易隔離等級。
一般而言,因為數據上放有鎖定,而拒絕存取另一個交易所變更的數據。 不過,NOLOCK 鎖定提示和 READ UNCOMMITTED 交易隔離等級可讓查詢讀取另一筆交易鎖定的數據。 此案例稱為 讀取,因為您可以讀取尚未認可且可能變更的值。
用戶動作
此錯誤會取消查詢。 要麼重新提交查詢,要麼 移除 NOLOCK 鎖定提示。 或者,使用適當的 隔離層 級,例如 READ COMMITTED (預設值),或 SNAPSHOT 避免髒讀,同時避免此錯誤。