症狀
請考慮以下案例:
- 您在 SQL Server 2017 執行個體上啟用通用準則合規性 (CCC) 選項。
- 您嘗試使用不存在的 SQL 登入登入 SQL Server 執行個體。
- 使用系統管理員帳戶登入 SQL Server 執行個體。
- 針對 master 資料庫執行 DBCC CHECKDB 命令。
在此案例中,您可能會收到如下所示的錯誤訊息:
Msg 2570, 層級 16, 狀態 2, Line LineNumber
頁面 (#:#) , slot # in object ID #, index ID #, partition ID #, alloc unit ID # (type “In-row data”) . 資料類型 “nvarchar” 的欄 “name” 值不在範圍內。 將資料欄位更新為法律值。
狀態
Microsoft 已確認這是「適用對象」一節中列出的 Microsoft 產品中的問題。
解決方式
此問題已在下列 SQL Server 累積更新中修正:
關於 SQL Server 的累積更新:
SQL Server 的每個新累積更新都包含所有 Hotfix 和先前累積更新的所有安全性修正程式。 查看 SQL Server 的最新累積更新:
因應措施
若要解決此問題,請啟用 TF) 2566 (追蹤旗標,以便在您針對 master 資料庫執行 DBCC CHECKDB 命令時停用DATA_PURITY檢查。 不過,這並不會防止無效的資料列插入 master 資料庫。 它只會在 DBCC CHECKDB 期間停用檢查。
參考資料
了解 Microsoft 用來說明軟體更新的術語。