sys.dm_exec_trigger_stats (Transact-SQL)

Retourne les statistiques sur les performances des agrégats pour les déclencheurs mis en cache. La vue contient une ligne par déclencheur, et la durée de vie de la ligne correspond à la durée de mise en cache du déclencheur. Lorsqu'un déclencheur est supprimé du cache, la ligne correspondante est éliminée de cette vue. Un événement de trace SQL de statistiques de performances similaire à sys.dm_exec_query_stats est alors déclenché.

Nom de la colonne

Type de données

Description

database_id

int

ID de base de données dans lequel réside le déclencheur.

object_id

int

Numéro d'identification d'objet du déclencheur.

type

char(2)

Type de l'objet :

TA = Déclencheur assembly (CLR)

TR = Déclencheur SQL

Type_desc

nvarchar(60)

Description du type d'objet :

CLR_TRIGGER

SQL_TRIGGER

sql_handle

varbinary(64)

Cette valeur peut être utilisée pour établir une corrélation avec des requêtes de sys.dm_exec_query_stats qui ont été exécutées à partir de ce déclencheur.

plan_handle

varbinary(64)

Identificateur du plan en mémoire. Cet identificateur est temporaire et il reste constant uniquement tant que le plan est dans le cache. Cette valeur peut être utilisée avec la vue de gestion dynamique sys.dm_exec_cached_plans.

cached_time

datetime

Heure à laquelle le déclencheur a été ajouté au cache.

last_execution_time

datetime

Heure de dernière exécution du déclencheur.

execution_count

bigint

Nombre d'exécutions du déclencheur depuis sa dernière compilation.

total_worker_time

bigint

Temps processeur total, en microsecondes, consommé par les exécutions de ce déclencheur depuis sa compilation.

last_worker_time

bigint

Temps processeur, en microsecondes, consommé lors de la dernière exécution du déclencheur.

min_worker_time

bigint

Temps processeur maximal, en microsecondes, consommé par ce déclencheur lors d'une seule exécution.

max_worker_time

bigint

Temps processeur maximal, en microsecondes, consommé par ce déclencheur lors d'une seule exécution.

total_physical_reads

bigint

Nombre total de lectures physiques effectuées par les exécutions de ce déclencheur depuis sa compilation.

last_physical_reads

bigint

Nombre de lectures physiques effectuées lors de la dernière exécution du déclencheur.

min_physical_reads

bigint

Nombre minimal de lectures physiques effectuées par ce déclencheur lors d'une seule exécution.

max_physical_reads

bigint

Nombre maximal de lectures physiques effectuées par ce déclencheur lors d'une seule exécution.

total_logical_writes

bigint

Nombre total d'écritures logiques effectuées par les exécutions de ce déclencheur depuis sa compilation.

last_logical_writes

bigint

Nombre d'écritures logiques effectuées lors de la dernière exécution du déclencheur.

min_logical_writes

bigint

Nombre minimal d'écritures logiques effectuées par ce déclencheur lors d'une seule exécution.

max_logical_writes

bigint

Nombre maximal d'écritures logiques effectuées par ce déclencheur lors d'une seule exécution.

total_logical_reads

bigint

Nombre total de lectures logiques effectuées par les exécutions de ce déclencheur depuis sa compilation.

last_logical_reads

bigint

Nombre de lectures logiques effectuées lors de la dernière exécution du déclencheur.

min_logical_reads

bigint

Nombre minimal de lectures logiques effectuées par ce déclencheur lors d'une seule exécution.

max_logical_reads

bigint

Nombre maximal de lectures logiques effectuées par ce déclencheur lors d'une seule exécution.

total_elapsed_time

bigint

Temps total écoulé, en microsecondes, pour les exécutions de ce déclencheur.

last_elapsed_time

bigint

Temps écoulé, en microsecondes, pour la dernière exécution de ce déclencheur.

min_elapsed_time

bigint

Temps minimal écoulé, en microsecondes, pour les différentes exécutions de ce déclencheur.

max_elapsed_time

bigint

Temps maximal écoulé, en microsecondes, pour les différentes exécutions de ce déclencheur.

Autorisations

Nécessite l'autorisation VIEW SERVER STATE sur le serveur.

Notes

Les statistiques de la vue sont actualisées lorsqu'une requête est terminée.

Exemples

L'exemple suivant retourne des informations sur les cinq principaux déclencheurs identifiés d'après le temps moyen écoulé.

PRINT '--top 5 CPU consuming triggers ';
SELECT TOP 5 d.object_id, d.database_id, DB_NAME(database_id) AS 'database_name', 
    OBJECT_NAME(object_id, database_id) AS 'trigger_name', d.cached_time, 
    d.last_execution_time, d.total_elapsed_time, 
    d.total_elapsed_time/d.execution_count AS [avg_elapsed_time], 
    d.last_elapsed_time, d.execution_count
FROM sys.dm_exec_trigger_stats AS d
ORDER BY [total_worker_time] DESC;