Share via


Problembehandlung von Abfragebenachrichtigungen: Abonnement registriert, Ereignismeldung nicht erstellt, Abonnement entfernt

Wenn ein Abonnement erfolgreich registriert wurde, eine Abfrage, die eine Benachrichtigung erstellen sollte, jedoch trotz Entfernens des Abonnements keine Benachrichtigung erstellt, kann SQL Server die Ereignismeldung nicht an den angegebenen Dienst übermitteln. In diesem Fall gibt die Anweisung, die die Daten aktualisiert hat, möglicherweise einen Fehler zurück, oder Service Broker sendet einen Fehler an die QueryNotificationErrorsQueue-Warteschlange. SQL Server empfängt diese Fehlermeldungen und schreibt die Fehler in das SQL Server-Fehlerprotokoll.

Die häufigste Ursache für dieses Problem besteht darin, dass die Abonnementanforderung keinen Dienstnamen enthielt, der einem Dienst in der Datenbank entspricht.

Wenn der Befehl, der die Daten ändert, keinen Fehler meldet, besteht das Problem wahrscheinlich darin, dass der Dienst, der die Anforderung empfängt, nicht ordnungsgemäß konfiguriert ist. Um eine Diagnose des Problems zu erstellen, überprüfen Sie das SQL Server-Fehlerprotokoll.

Sie können auch mithilfe von SQL Server Profiler bestätigen, dass SQL Server eine Benachrichtigungsmeldung erstellt hat. Starten Sie in SQL Server Profiler eine Ablaufverfolgung, die die Ereignisse in der Kategorie Abfragebenachrichtigungen anzeigt. Wenn SQL Server eine Benachrichtigungsmeldung erstellt, wird auch ein QN:Subscription-Ereignis erstellt, in dem Event SubClass den Wert 3 - Subscription Fired besitzt.

Weitere Informationen zur Problembehandlung des Service Broker-Routings und der -Nachrichtenübermittlung finden Sie unter Problembehandlung bei Routing und Nachrichtenübermittlung.

Siehe auch

Andere Ressourcen

sys.services (Transact-SQL)
Problembehandlung bei Routing und Nachrichtenübermittlung
SQL Server Profiler (Referenz)

Hilfe und Informationen

Informationsquellen für SQL Server 2005