sys.dm_qn_subscriptions
Actualizado: 12 de diciembre de 2006
Devuelve información acerca de las suscripciones de notificaciones de consultas activas en el servidor. Puede usar esta vista para comprobar si hay suscripciones activas en el servidor o en una base de datos especificada, o para comprobar una entidad de seguridad de servidor especificada.
Nombre de columna
Tipo de datos
Descripción
id
int
Id. de una suscripción.
database_id
int
Id. de la base de datos en la que se ha ejecutado la notificación. Esta base de datos almacena información relacionada con esta suscripción.
sid
varbinary(85)
Id. de seguridad de la entidad de seguridad del servidor que creó y es propietaria de esta suscripción.
object_id
int
Id. de la tabla interna que almacena información acerca de los parámetros de suscripción.
created
datetime
Fecha y hora en que se creó la suscripción.
tiempo de espera
int
Tiempo de espera de la suscripción. La notificación se marcará para activarse después de transcurrido este tiempo.
Nota:
El tiempo de activación real puede ser mayor que el tiempo de espera especificado. No obstante, si tiene lugar un cambio que invalida la suscripción después el tiempo de espera especificado, pero antes de que se active la suscripción, SQL Server garantiza que la activación tiene lugar en el momento en que se realiza el cambio.
status
int
Indica el estado de la suscripción.
Cardinalidades de relación
De | Para | En | Tipo |
---|---|---|---|
sys.dm_qn_subscriptions |
sys.databases |
database_id |
Varios a uno |
sys.dm_qn_subscriptions |
sys.internal_tables |
object_id |
Varios a uno |
Permisos
Requiere el permiso VIEW SERVER STATE en el servidor.
[!NOTA] Si el usuario no tiene el permiso VIEW SERVER STATE, esta vista devuelve información acerca de suscripciones que son propiedad del usuario actual.
Ejemplos
A. Devolver las suscripciones de notificación de consultas activas del usuario actual
En el ejemplo siguiente se devuelven las suscripciones de notificación de consultas activas del usuario actual. Si el usuario tiene permisos VIEW SERVER STATE, se devuelven todas las suscripciones activas del servidor.
SELECT id, database_id, sid, object_id, created, timeout, status
FROM sys.dm_qn_subscriptions;
GO
B. Devolver las suscripciones de notificación de consultas activas del usuario especificado
En el ejemplo siguiente se devuelven las suscripciones de notificación de consultas activas suscritas por el inicio de sesión Ruth0
.
SELECT id, database_id, sid, object_id, created, timeout, status
FROM sys.dm_qn_subscriptions
WHERE sid = SUSER_SID('Ruth0');
GO
C. Devolver los metadatos de las tablas internas para las suscripciones de notificación de consultas
En el ejemplo siguiente se devuelven los metadatos de la tabla interna para las suscripciones de notificación de consultas.
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
Vea también
Referencia
Funciones y vistas de administración dinámica
Vistas de administración dinámica relacionadas con notificaciones de consulta
KILL QUERY NOTIFICATION SUBSCRIPTION (Transact-SQL)
Otros recursos
Usar notificaciones de consulta
Tablas internas
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
12 de diciembre de 2006 |
|