Condividi tramite


sp_query_store_unforce_plan (Transact-SQL)

Si applica a: SQL Server 2016 (13.x) e versioni successive Database SQL di AzureIstanza gestita di SQL di Azure

Abilita l'annullamento di un piano forzato in precedenza per una determinata query in Query Store.

Convenzioni relative alla sintassi Transact-SQL

Sintassi

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

Argomenti

Importante

Gli argomenti per le stored procedure estese devono essere immessi nell'ordine specifico, come descritto nella sezione Sintassi. Se i parametri vengono immessi in ordine non corretto, si verifica un messaggio di errore.

[ @query_id = ] query_id

ID della query. @query_id è bigint, senza impostazione predefinita.

[ @plan_id = ] plan_id

ID del piano di query che non verrà più applicato. @plan_id è bigint, senza impostazione predefinita.

[ @force_plan_scope = ] 'replica_group_id'

È possibile annullare il carico dei piani in una replica secondaria quando Query Store per le repliche secondarie è abilitato. Eseguire sp_query_store_force_plan e sp_query_store_unforce_plan nella replica primaria. L'utilizzo dell'argomento @force_plan_scope viene impostato per impostazione predefinita sulla replica locale in cui viene eseguito il comando, ma è possibile specificare un replica_group_id che fa riferimento alla vista del catalogo di sistema sys.query_store_plan_forcing_locations.

Valori del codice restituito

0 (esito positivo) o 1 (errore).

Autorizzazioni

È necessaria l'autorizzazione ALTER per il database.

Esempi

Nell'esempio seguente vengono restituite informazioni sulle query in Query Store.

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;

Dopo aver identificato il query_id e plan_id da rimuovere, usare l'esempio seguente per rimuovere il piano.

EXEC sp_query_store_unforce_plan 3, 3;