共用方式為


sp_query_store_unforce_plan (Transact-SQL)

適用於: SQL Server 2016 (13.x) 及以後版本 Azure SQL Database AzureSQL Managed InstanceSQL database in Microsoft Fabric

針對 查詢存放區 中的特定查詢啟用先前強制計劃。

Transact-SQL 語法慣例

語法

sp_query_store_unforce_plan
    [ @query_id = ] query_id ,
    [ @plan_id = ] plan_id ,
    [ @replica_group_id = ] 'replica_group_id'
[ ; ]

引數

重要

擴充預存程式的自變數必須依特定順序輸入,如 語法 一節所述。 如果參數依序輸入,就會發生錯誤訊息。

[ @query_id = ] query_id

查詢的識別碼。 @query_id為 bigint,沒有預設值。

[ @plan_id = ] plan_id

不再強制執行之查詢計劃的標識碼。 @plan_id是 bigint,沒有預設值。

[ @replica_group_id = ] 「replica_group_id

啟用 可讀取次要複本的查詢存放區 時,您可以取消對次要複本的計劃。 在主要複本上執行 sp_query_store_force_plansp_query_store_unforce_plan。 使用 @replica_group_id 引數會預設為執行指令的本端抄本,但您可以指定參照sys.query_store_plan_forcing_locations系統型錄視圖的replica_group_id

傳回碼值

0 (成功) 或 1 (失敗)。

權限

需要 ALTER 資料庫的權限。

備註

自 SQL Server 2025(17.x)及以後版本起,以及 Azure SQL 資料庫,支援次要副本的查詢儲存庫。 欲獲得完整的平台支援,請參閱 查詢商店中的次要副本

範例

下列範例會傳回 查詢存放區 中查詢的相關信息。

SELECT txt.query_text_id,
       txt.query_sql_text,
       pl.plan_id,
       qry.*
FROM sys.query_store_plan AS pl
     INNER JOIN sys.query_store_query AS qry
         ON pl.query_id = qry.query_id
     INNER JOIN sys.query_store_query_text AS txt
         ON qry.query_text_id = txt.query_text_id;

在您識別 您想要取消強制的query_idplan_id 之後,請使用下列範例來取消計劃。

EXECUTE sp_query_store_unforce_plan 3, 3;