Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy do: SQL Server 2016 (13.x) i nowsze wersje
Azure SQL Database
Azure SQL Managed Instance
SQL database in Microsoft Fabric
Umożliwia usunięcie poprzedniego wymuszonego planu dla określonego zapytania w magazynie zapytań.
Transact-SQL konwencje składni
Składnia
sp_query_store_unforce_plan
[ @query_id = ] query_id ,
[ @plan_id = ] plan_id ,
[ @replica_group_id = ] 'replica_group_id'
[ ; ]
Argumenty
Ważny
Argumenty dla rozszerzonych procedur składowanych należy wprowadzić w określonej kolejności zgodnie z opisem w sekcji składni. Jeśli parametry są wprowadzane poza kolejnością, wystąpi komunikat o błędzie.
[ @query_id = ] query_id
Identyfikator zapytania. @query_id jest bigint, bez wartości domyślnej.
[ @plan_id = ] plan_id
Identyfikator planu zapytania, który nie będzie już wymuszany. @plan_id jest bigint, bez wartości domyślnej.
[ @replica_group_id = ] 'replica_group_id'
Plany można wymazyć w repliki pomocniczej, gdy jest włączony magazyn zapytań dla czytelnych plików pomocniczych . Wykonaj sp_query_store_force_plan i sp_query_store_unforce_plan w repliki podstawowej. Używając argumentu @replica_group_id domyślnie repliki lokalnej, w której jest wykonywane polecenie, ale można określić replica_group_id odwołującą się do widoku wykazu systemu sys.query_store_plan_forcing_locations .
Zwracanie wartości kodu
0 (powodzenie) lub 1 (niepowodzenie).
Uprawnienia
ALTER Wymaga uprawnienia do bazy danych.
Uwagi
Storage Query Store dla replik wtórnych jest obsługiwany od SQL Server 2025 (17.x) i późniejszych wersji, a także w Azure SQL Database. Pełne wsparcie dla platform można znaleźć w Query Store dla replik wtórnych.
Przykłady
Poniższy przykład zwraca informacje o zapytaniach w magazynie zapytań.
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;
Po zidentyfikowaniu query_id i plan_id, które chcesz wymuśić, użyj poniższego przykładu, aby wymuś plan.
EXECUTE sp_query_store_unforce_plan 3, 3;
Powiązana zawartość
- sys.query_store_replicas (Transact-SQL)
- sys.query_store_plan_forcing_locations (Transact-SQL)
- sp_query_store_force_plan (Transact-SQL)
- sp_query_store_remove_plan (Transact-SQL)
- sp_query_store_remove_query (Transact-SQL)
- sp_query_store_reset_exec_stats (Transact-SQL)
- sp_query_store_flush_db (Transact-SQL)
- widoków katalogu magazynu zapytań (Transact-SQL)
- Monitorowanie wydajności przy użyciu magazynu zapytań
- najlepsze rozwiązanie z magazynu zapytań