Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a:SQL Server
Esistono due categorie principali di eventi che costituiscono il modello di programmazione per il provider WMI per gli eventi del server, che possono essere sottoposti a query tramite query WQL sul provider. Si tratta di eventi DDL (Data Definition Language) ed eventi di traccia. È QUEUE_ACTIVATION anche possibile eseguire query sugli eventi e BROKER_QUEUE_DISABLED di Service Broker.
Eventi e gruppi di eventi
Per ottenere un elenco completo degli eventi del server, eseguire una query sulla sys.event_notification_event_types vista del catalogo con lo script Transact-SQL seguente.
; 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;
Osservazioni:
L'evento DDL_ASSEMBLY_EVENTS , ad esempio, include qualsiasi ALTER_ASSEMBLYevento , CREATE_ASSEMBLYe DROP_ASSEMBLY . Analogamente, l'evento TRC_FULL_TEXT include qualsiasi FT_CRAWL_ABORTEDevento , FT_CRAWL_STARTEDe FT_CRAWL_STOPPED .
ALL_EVENTS include tutti gli eventi DDL, gli eventi di traccia, QUEUE_ACTIVATIONe BROKER_QUEUE_DISABLED.
Per informazioni sulle proprietà che possono essere sottoposte a query da un evento o un gruppo di eventi, fare riferimento allo schema dell'evento. Per impostazione predefinita, lo schema degli eventi viene installato nella directory seguente:
< unità>:\Programmi\Microsoft SQL Server\nnn\Tools\Binn\schemas\sqlserver\2006\11\events\events.xsd
Ad esempio, facendo riferimento all'evento , il ALTER_DATABASE relativo evento padre è DDL_SERVER_LEVEL_EVENTS e le relative proprietà sono TSQLCommand e DatabaseName. L'evento eredita inoltre le proprietà SQLInstance, PostTime, ComputerName, SPID e LoginName. L'evento non dispone di eventi figli.
Nota
Le stored procedure di sistema che eseguono operazioni di tipo DDL possono inoltre attivare le notifiche degli eventi. Testare le notifiche degli eventi per determinarne le risposte alle stored procedure di sistema eseguite. Ad esempio, l'istruzione e CREATE TYPE la sp_addtype stored procedure generano entrambe una notifica di evento creata in un CREATE_TYPE evento. Per altre informazioni, vedere Eventi DDL.