sys.dm_qn_subscriptions

Aktualisiert: 12. Dezember 2006

Gibt Informationen zu den aktiven Abfragebenachrichtigungsabonnements auf dem Server zurück. Diese Sicht können Sie verwenden, um in der Serverdatenbank oder in einer angegebenen Datenbank eine Überprüfung auf aktive Abonnements vorzunehmen oder um auf eine Überprüfung auf einen angegebenen Serverprinzipal vorzunehmen.

Spaltenname

Datentyp

Beschreibung

id

int

ID eines Abonnements.

database_id

int

ID der Datenbank, für die die Abfragebenachrichtigung ausgeführt wurde. In dieser Datenbank sind die mit diesem Abonnement verbundenen Informationen gespeichert.

sid

varbinary(85)

Sicherheits-ID des Serverprinzipals, der dieses Abonnement erstellt hat und besitzt.

object_id

int

ID der internen Tabelle, in der die Informationen zu Abonnementparametern gespeichert sind.

created

datetime

Datum und Uhrzeit des Zeitpunktes, an dem das Abonnement erstellt wurde.

timeout

int

Timeout für das Abonnement. Die Benachrichtigung wird ausgelöst, nachdem diese Zeit verstrichen ist.

ms187793.note(de-de,SQL.90).gifHinweis:

Die tatsächliche Zeit der Auslösung kann größer sein als das angegebene Timeout. Wenn jedoch eine Änderung, die das Abonnement ungültig macht, nach dem angegebenen Timeout und vor dem Auslösen des Abonnements auftritt, wird von SQL Server sichergestellt, dass das Auslösen zu dem Zeitpunkt erfolgt, an dem die Änderung vorgenommen wurde.

status

int

Zeigt den Status des Abonnements an.

Kardinalität der Beziehungen

Von In Für Typ

sys.dm_qn_subscriptions

sys.databases

database_id

m:1

sys.dm_qn_subscriptions

sys.internal_tables

object_id

m:1

Berechtigungen

Erfordert die VIEW SERVER STATE-Berechtigung auf dem Server.

ms187793.note(de-de,SQL.90).gifHinweis:
Falls der Benutzer die VIEW SERVER STATE-Berechtigung nicht besitzt, gibt diese Sicht Informationen zu Abonnements zurück, die sich im Besitz des aktuellen Benutzers befinden.

Beispiele

A. Zurückgeben aktiver Abfragebenachrichtigungsabonnements für den aktuellen Benutzer

Im folgenden Beispiel werden die aktiven Abfragebenachrichtigungsabonnements des aktuellen Benutzers zurückgegeben. Wenn der Benutzer über VIEW SERVER STATE-Berechtigungen verfügt, werden alle aktiven Abonnements auf dem Server zurückgegeben.

SELECT id, database_id, sid, object_id, created, timeout, status
FROM sys.dm_qn_subscriptions;
GO

B. Zurückgeben aktiver Abfragebenachrichtigungsabonnements für einen angegebenen Benutzer

Im folgenden Beispiel werden die aktiven Abfragebenachrichtigungsabonnements zurückgegeben, die vom Anmeldenamen Ruth0 abonniert wurden.

SELECT id, database_id, sid, object_id, created, timeout, status
FROM sys.dm_qn_subscriptions
WHERE sid = SUSER_SID('Ruth0');
GO

C. Zurückgeben der Metadaten interner Tabellen für Abfragebenachrichtigungsabonnements

Im folgenden Beispiel werden die Metadaten interner Tabellen für Abfragebenachrichtigungsabonnements zurückgegeben.

SELECT qn.id AS query_subscription_id
    ,it.name AS internal_table_name
    ,it.object_id AS internal_table_id
FROM sys.internal_tables AS it
JOIN sys.dm_qn_subscriptions AS qn ON it.object_id = qn.object_id
WHERE it.internal_type_desc = 'QUERY_NOTIFICATION';
GO

Siehe auch

Verweis

Dynamische Verwaltungssichten und -funktionen
Mit Abfragebenachrichtigungen verbundene dynamische Verwaltungssichten
KILL QUERY NOTIFICATION SUBSCRIPTION (Transact-SQL)

Andere Ressourcen

Verwenden von Abfragebenachrichtigungen
Interne Tabellen

Hilfe und Informationen

Informationsquellen für SQL Server 2005

Änderungsverlauf

Version Verlauf

12. Dezember 2006

Neuer Inhalt:
  • Die Abschnitte "Kardinalität der Beziehungen" und "Beispiele" wurden hinzugefügt.