Fournisseur WMI pour les classes et propriétés des événements serveur
S'applique à : SQL Server
Il existe deux catégories principales d’événements qui composent le modèle de programmation pour le fournisseur WMI pour les événements de serveur, qui peuvent être interrogés en émettant des requêtes WQL sur le fournisseur. Il s’agit d’événements de langage de définition de données (DDL) et d’événements de trace. Les QUEUE_ACTIVATION
événements et BROKER_QUEUE_DISABLED
service Broker peuvent également être interrogés.
Événements et groupes d’événements
Pour obtenir la liste complète des événements de serveur, interrogez l’affichage sys.event_notification_event_types
catalogue avec le script Transact-SQL suivant.
; WITH EventsCTE (Child, Level, Hierarchy)
AS (
SELECT t.[type],
0,
CAST(t.[type_name] AS NVARCHAR(MAX))
FROM sys.event_notification_event_types t
WHERE t.parent_type IS NULL
UNION ALL
SELECT t.[type],
Level + 1,
CAST(rc.Hierarchy + '/' + cast(t.[type_name] AS NVARCHAR(MAX)) AS NVARCHAR(MAX))
FROM sys.event_notification_event_types t
INNER JOIN EventsCTE rc
ON t.parent_type = rc.Child
)
SELECT Level, Hierarchy
FROM EventsCTE
WHERE Level > 0
ORDER BY Hierarchy;
Notes
L’événement DDL_ASSEMBLY_EVENTS
, par exemple, inclut n’importe quel ALTER_ASSEMBLY
, CREATE_ASSEMBLY
et DROP_ASSEMBLY
l’événement. De même, l’événement TRC_FULL_TEXT
inclut n’importe quel événement et FT_CRAWL_STOPPED
n’importe quel FT_CRAWL_ABORTED
FT_CRAWL_STARTED
événement. ALL_EVENTS
couvre tous les événements DDL, les événements de trace, QUEUE_ACTIVATION
et BROKER_QUEUE_DISABLED
.
Pour savoir quelles propriétés d'un événement ou d'un groupe d'événements peuvent être interrogées, reportez-vous au schéma d'événement. Par défaut, le schéma d’événement est installé dans le répertoire suivant :
C :\Program Files\Microsoft SQL Server\nnn\Tools\Binn\schemas\sqlserver\2006\11\events\events.xsd
Par exemple, en faisant référence à l’événement ALTER_DATABASE
, son événement parent est DDL_SERVER_LEVEL_EVENTS
et ses propriétés sont TSQLCommand
et DatabaseName
. Cet événement hérite également des propriétés SQLInstance
, PostTime
, ComputerName
, SPID
et LoginName
. Il ne possède pas d'événements enfants.
Remarque
Les procédures stockées système qui exécutent des opérations de type DDL peuvent également déclencher des notifications d'événements. Testez vos notifications d'événements pour déterminer leur réponse aux procédures stockées du système qui sont exécutées. Par exemple, l’instruction et sp_addtype
la CREATE TYPE
procédure stockée déclenchent toutes deux une notification d’événement créée sur un CREATE_TYPE
événement. Pour plus d’informations, consultez Événements DDL.