執行逾時到期。在作業完成之前超過逾時等待的時間,或是伺服器未回應。使用者已取消作業。陳述式已經結束。尋找到一段刪除資料的 TSQL Delete 語法,因為涉及多個 Table 資料刪除就相對複雜,從主要語法內發現到 operator 內有 warming - 無統計資料的資料行 (Columns With No Statistics),下圖截圖整理過,只留下重點資訊
看見 [永不 (never)] 字樣,直覺是有選項可以把統計資訊更新 disable,從官方範例 - UPDATE STATISTICS - D. Update statistics by using FULLSCAN and NORECOMPUTE 確定真的可以 disable
USE AdventureWorks2022;
GO
UPDATE STATISTICS Production.Product (Products)
WITH FULLSCAN, NORECOMPUTE;
GO
使用語法確認並沒有發現統計資訊自動更新被 disable 情況,推論是翻譯問題,應該是從來沒有更新過而已SELECT
OBJECT_NAME(object_id) AS TableName,
Name AS StatName
FROM sys.stats
WHERE no_recompute = 1
更新該 Index 統計資訊後 operator warming 就消失,執行計畫也正常些
UPDATE STATISTICS Table (StatName) WITH FULLSCAN
該 Table 資料很少,大約 20 萬筆左右,但 clustered index 完全沒有觸發自動更新統計資訊也是頗奇怪


沒有留言:
張貼留言