| title | sp_query_store_force_plan (Transact-SQL) | Microsoft Docs | ||||
|---|---|---|---|---|---|
| ms.custom | |||||
| ms.date | 03/29/2016 | ||||
| ms.prod | sql-non-specified | ||||
| ms.reviewer | |||||
| ms.suite | |||||
| ms.technology |
|
||||
| ms.tgt_pltfrm | |||||
| ms.topic | language-reference | ||||
| f1_keywords |
|
||||
| dev_langs |
|
||||
| helpviewer_keywords |
|
||||
| ms.assetid | 0068f258-b998-4e4e-b47b-e375157c8213 | ||||
| caps.latest.revision | 8 | ||||
| author | BYHAM | ||||
| ms.author | rickbyh | ||||
| manager | jhubbard |
[!INCLUDEtsql-appliesto-ss2016-asdb-xxxx-xxx_md]
Enables forcing a particular plan for a particular query.
When a plan is forced for a particular query, every time [!INCLUDEssNoVersion] encounters the query, it tries to force the plan in the optimizer. If plan forcing fails, a XEvent is fired and the optimizer is instructed to optimize in the normal way.
Transact-SQL Syntax Conventions
sp_query_store_force_plan [ @query_id = ] query_id , [ @plan_id = ] plan_id [;]
[ @query_id = ] query_id
Is the id of the query. query_id is a bigint, with no default.
[ @plan_id = ] plan_id
Is the id of the query plan to be forced. plan_id is a bigint, with no default.
0 (success) or 1 (failure)
Requires the EXECUTE permission on the database, and INSERT, UPDATE, and DELETE permission on the query store catalog views.
The following example returns information about the queries in the query store.
SELECT Txt.query_text_id, Txt.query_sql_text, Pl.plan_id, Qry.*
FROM sys.query_store_plan AS Pl
JOIN sys.query_store_query AS Qry
ON Pl.query_id = Qry.query_id
JOIN sys.query_store_query_text AS Txt
ON Qry.query_text_id = Txt.query_text_id ;
After you identify the query_id and plan_id that you want to force, use the following example to force the query to use a plan.
EXEC sp_query_store_force_plan 3, 3;
sp_query_store_remove_plan (Transct-SQL)
sp_query_store_remove_query (Transact-SQL)
sp_query_store_unforce_plan (Transact-SQL)
Query Store Catalog Views (Transact-SQL)
Monitoring Performance By Using the Query Store
sp_query_store_reset_exec_stats (Transact-SQL)
sp_query_store_flush_db (Transact-SQL)