Sql-Server

如何列出所有強制查詢計劃並取消一項

  • October 10, 2016

幾週前,我使用 SSMS 2016 查詢儲存強制執行特定查詢以使用特定計劃。現在時不時地我有錯誤:

由於此查詢中定義的提示,查詢處理器無法生成查詢計劃。重新送出查詢而不指定任何提示並且不使用 SET FORCEPLAN

我假設SET FORCEPLAN是自動傳遞的,因為執行該查詢的程式碼沒有。所以我想回顧一下我的強制計劃,也許取消它。但我再也無法在查詢儲存中找到該查詢。

因此我的問題是:有沒有辦法列出所有強制查詢計劃,然後我該如何取消?

您應該能夠通過在is_forced_plan = 1上查詢此目錄視圖 ( sys.query_store_plan ) 過濾來獲取有關“強制”計劃的資訊。頁面底部是指向查詢儲存的其他有用目錄視圖的連結。

此儲存過程 ( sp_query_store_unforce_plan ) 允許您“取消強制”計劃。

引用自:https://dba.stackexchange.com/questions/150640