Partilhar via


sp_query_store_unforce_plan (Transact-SQL)

Aplica-se a: SQL Server 2016 (13.x) e posterior Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure

Permite a desimposição de um plano forçado anteriormente para uma consulta específica no Repositório de Consultas.

Convenções de sintaxe de Transact-SQL

Sintaxe

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

Argumentos

@query_id [ = ] query_id

A ID da consulta. @query_id é bigint, sem padrão.

@plan_id [ = ] plan_id

A ID do plano de consulta que não será mais imposta. @plan_id é bigint, sem padrão.

@force_plan_scope [ = ] 'replica_group_id'

Você pode forçar e não forçar planos em uma réplica secundária quando o Repositório de Consultas para réplicas secundárias está habilitado. Execute sp_query_store_force_plan e sp_query_store_unforce_plan na réplica secundária. O argumento @force_plan_scope opcional usa como padrão apenas a réplica local, mas você pode, opcionalmente, especificar um replica_group_id referenciando sys.query_store_plan_forcing_locations.

Valores do código de retorno

0 (sucesso) ou 1 (falha).

Permissões

Requer a permissão ALTER no banco de dados.

Exemplos

O exemplo a seguir retorna informações sobre as consultas no Repositório de Consultas.

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;

Depois de identificar o query_id e o plan_id que você deseja desimpor, use o exemplo a seguir para desforçar o plano.

EXEC sp_query_store_unforce_plan 3, 3;