Partilhar via


Guia do Plano para Classe de Evento Mal Sucedido

Aplica-se a:SQL ServerAzure SQL Managed Instance

A classe de evento Unsuccessful Guide indica que o SQL Server não conseguiu produzir um plano de execução para uma consulta ou lote que contivesse um guia de plano. Em vez disso, o plano foi compilado sem usar o guia do plano. O evento dispara quando as seguintes condições são verdadeiras:

  • O lote/módulo na definição do guia do plano corresponde ao lote que está a ser executado.

  • A consulta na definição do guia de planos corresponde à consulta que está a ser executada.

  • As dicas na definição do guia do plano, incluindo a USE PLAN dica, não foram aplicadas com sucesso à consulta ou ao lote. Ou seja, o plano de consulta compilado não conseguia respeitar as dicas especificadas e o plano era elaborado sem usar o guia do plano.

Um guia de plano inválido pode fazer com que este evento dispare. Valide o guia de planos utilizado pela consulta ou lote usando a função sys.fn_validate_plan_guide e corrija o erro reportado por essa função.

Este evento está incluído no modelo de ajuste do SQL Server Profiler.

Observação

Esta classe de evento não está disponível na Azure SQL Database.

Guia do Plano Colunas de Dados da Classe de Eventos Fracassados

Nome da coluna de dados Tipo de dados Description ID da coluna Filtrável
ApplicationName nvarchar Nome do aplicativo cliente que criou a conexão com uma instância do SQL Server. Esta coluna é preenchida com os valores que são passados pela aplicação em vez do nome apresentado do programa. 10 Yes
ClientProcessID int ID atribuído pelo computador host ao processo em que o aplicativo cliente está sendo executado. Esta coluna de dados é preenchida se o cliente fornecer o ID do processo do cliente. 9 Yes
Base de Dados int ID da base de dados especificado pela instrução da base de dados USE ou pela base de dados padrão se não tiver sido emitida a instrução USE para uma instância especificada. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor de um banco de dados usando a função DB_ID. 3 Yes
DatabaseName nvarchar Nome do banco de dados no qual a instrução de usuário está sendo executada. 35 Yes
EventClass int Tipo de evento = 218. 27 Não
Sequência de Eventos int Sequência de um evento específico dentro do pedido. 51 Não
Nome do Anfitrião nvarchar Nome do computador no qual o cliente está sendo executado. Esta coluna de dados é preenchida se o cliente fornecer o nome do anfitrião. Para determinar o nome do anfitrião, use a função HOST_NAME. 8 Yes
IsSystem int Indica se o evento ocorreu num processo do sistema ou num processo de utilizador: 1 = sistema, 0 = utilizador. 60 Yes
Nome de login nvarchar Nome do login do utilizador (seja login de segurança SQL Server ou credenciais de login do Microsoft Windows na forma de DOMÍNIO\nome de utilizador). 11 Yes
LoginSid image Número de identificação de segurança (SID) do utilizador com sessão iniciada. Pode encontrar esta informação nas vistas do catálogo sys.server_principals ou sys.sql_logins . Cada SID é único para cada login no servidor. 41 Yes
NTDomainName nvarchar Domínio do Windows ao qual o usuário pertence. 7 Yes
NTUserName nvarchar Nome de usuário do Windows. 6 Yes
ID do objeto int ID do objeto do módulo que estava a ser compilado quando o guia do plano foi aplicado. Se o guia do plano não foi aplicado a um módulo, esta coluna é definida como NULL. 22 Yes
ID do Pedido int ID do pedido que contém a instrução. 49 Yes
Nome do servidor nvarchar Nome da instância do SQL Server que está a ser rastreada. 26 Não
SessionLoginName nvarchar Nome de login do usuário que originou a sessão. Por exemplo, se se ligar ao SQL Server usando o Login1 e executar uma instrução como Login2, o SessionLoginName mostra o Login1 e o LoginName mostra o Login2. Esta coluna exibe os logons do SQL Server e do Windows. 64 Yes
SPID int ID da sessão em que o evento ocorreu. 12 Yes
StartTime datetime Hora de início do evento, se disponível. 14 Yes
TextData ntext Nome do guia do plano. 1 Yes
ID da transação bigint ID atribuída pelo sistema da transação. 4 Yes
XactSequence bigint Token que descreve a transação atual. 50 Yes

Ver também

Guia de Planos Classe de Eventos Bem-Sucedidos
Extended Events (Eventos Expandidos)
sp_trace_setevent (Transact-SQL)
sys.fn_validate_plan_guide (Transact-SQL)
sp_create_plan_guide (Transact-SQL)
sp_create_plan_guide_from_handle (Transact-SQL)