Partilhar via


Solucionando problemas de notificações de consulta: assinatura registrada, mensagem de evento não produzido, assinatura removida

Se uma assinatura for registrada com êxito, mas uma consulta que deveria produzir uma notificação não a produz, embora a assinatura tenha sido removida, o SQL Server não poderá entregar a mensagem de evento ao serviço especificado. Nesse caso, a instrução que atualizou os dados pode retornar um erro ou o Agente de Serviços pode enviar um erro para QueryNotificationErrorsQueue. O SQL Server recebe essas mensagens de erro e grava os erros no log de erros SQL Server.

A causa mais comum desse problema é que a solicitação de assinatura não continha um nome de serviço correspondente a um serviço no banco de dados.

Se o comando que altera os dados não informar um erro, o problema mais provável é que o serviço que recebe a solicitação não esteja configurado corretamente. Para diagnosticar esse problema, verifique o log de erros SQL Server.

Você também pode confirmar se o SQL Server produziu uma mensagem de notificação usando o SQL Server Profiler. No SQL Server Profiler, inicie um rastreamento que exiba os eventos na categoria Notificações de Consulta. Quando o SQL Server produz uma mensagem de notificação, produz também um evento QN:Subscription com uma Event SubClass3 - Subscription Fired.

Para obter mais informações sobre como solucionar problemas de roteamento do Agente de Serviços e entrega de mensagens, consulte Solucionando problemas de roteamento e entrega de mensagens.