sys.dm_exec_trigger_stats (Transact-SQL)

Gäller för:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-databas i Microsoft Fabric

Returnerar aggregerade prestandastatistik för cachade triggers. Vyn innehåller en rad per trigger, och radens livslängd är så lång som triggern förblir cachelagrad. När en trigger tas bort från cachen elimineras motsvarande rad från denna vy. Vid den tidpunkten genereras en SQL-spårningshändelse för prestandastatistik som liknar sys.dm_exec_query_stats.

Kolumnnamn Datatyp Description
database_id int Databas-ID där triggern finns.

I Azure SQL Database är värdena unika i en enskild databas eller en elastisk pool, men inte inom en logisk server.
object_id int Objektidentifieringsnummer för utlösaren.
type char(2) Föremålets typ:

TA = Assembly (CLR) trigger

TR = SQL-trigger
Type_desc nvarchar(60) Beskrivning av objekttypen:

CLR_TRIGGER

SQL_TRIGGER
sql_handle varbinary(64) Detta kan användas för att korrelera med frågor i sys.dm_exec_query_stats som utförts från denna trigger.
plan_handle varbinary(64) Identifierare för den minnesinterna planen. Den här identifieraren är tillfälligt och förblir endast konstant när planen finns kvar i cacheminnet. Det här värdet kan användas med sys.dm_exec_cached_plans dynamisk hanteringsvy.
cached_time datetime Tidpunkt då triggern lades till i cachen.
senaste_verkställningstid datetime Senast utlösaren utfördes.
execution_count bigint Antalet gånger som triggern har utförts sedan den senast kompilerades.
total_worker_time bigint Den totala mängden CPU-tid, i mikrosekunder, som förbrukats av exekveringar av denna trigger sedan den kompilerades.
senaste_arbetstid bigint CPU-tid, i mikrosekunder, som förbrukades sista gången triggern kördes.
min_worker_time bigint Den maximala CPU-tiden, i mikrosekunder, som denna trigger någonsin har förbrukat under en enskild exekvering.
max_worker_time bigint Den maximala CPU-tiden, i mikrosekunder, som denna trigger någonsin har förbrukat under en enskild exekvering.
total_physical_reads bigint Det totala antalet fysiska läsningar utförda av exekveringar av denna trigger sedan den kompilerades.
last_physical_reads bigint Antalet fysiska läsningar som utfördes senast triggern utfördes.
min_physical_reads bigint Det minsta antalet fysiska läsningar som denna trigger någonsin har utfört under en enskild exekvering.
max_physical_reads bigint Det maximala antalet fysiska läsningar som denna trigger någonsin har utfört under en enskild exekvering.
total_logical_writes bigint Det totala antalet logiska skrivningar som utförts av exekveringar av denna trigger sedan den kompilerades.
senaste_logiska_skrivningar bigint Antalet logiska skrivningar som utfördes senast när triggern utfördes.
min_logical_writes bigint Det minsta antalet logiska skrivningar som denna trigger någonsin har utfört under en enskild exekvering.
max_logical_writes bigint Det maximala antalet logiska skrivningar som denna trigger någonsin har utfört under en enskild exekvering.
total_logical_reads (totalt logiska läsningar) bigint Det totala antalet logiska läsningar utförda av exekveringar av denna trigger sedan den kompilerades.
last_logical_reads bigint Antalet logiska läsningar som utfördes senast utlösaren utfördes.
min_logical_reads bigint Det minsta antalet logiska läsningar som denna trigger någonsin har utfört under en enskild exekvering.
max_logical_reads bigint Det maximala antalet logiska läsningar som denna trigger någonsin har utfört under en enskild exekvering.
total_elapsed_time bigint Den totala förflutna tiden, i mikrosekunder, för slutförda exekveringar av denna trigger.
senaste_förfluten_tid bigint Förfluten tid, i mikrosekunder, för den senast genomförda utförandet av denna trigger.
min_elapsed_time bigint Den minsta förflutna tiden, i mikrosekunder, för varje slutförd exekvering av denna trigger.
max_tidsmängd bigint Den maximala förflutna tiden, i mikrosekunder, för varje slutförd exekvering av denna trigger.
total_spills bigint Det totala antalet sidor som spillts ut av att denna trigger kördes sedan den kompilerades.

Gäller för: Börjar med SQL Server 2017 (14.x) CU3
last_spills bigint Antalet sidor som spilldes senast utlöst aktiverades.

Gäller för: Börjar med SQL Server 2017 (14.x) CU3
min_spills bigint Det minsta antalet sidor som denna utlöser någonsin har spillt under en enda exekvering.

Gäller för: Börjar med SQL Server 2017 (14.x) CU3
max_spills bigint Det maximala antalet sidor som denna trigger någonsin har spillt under en enda exekvering.

Gäller för: Börjar med SQL Server 2017 (14.x) CU3
total_page_server_reads bigint Det totala antalet sidserverläsningar som utförts av exekveringar av denna trigger sedan den kompilerades.

Gäller för: Azure SQL Database Hyperscale
last_page_server_reads bigint Antalet sidserverläsningar som utfördes senast när triggern kördes.

Gäller för: Azure SQL Database Hyperscale
min_page_server_reads bigint Det minsta antalet sidserverläsningar som denna trigger någonsin har utfört under en enskild körning.

Gäller för: Azure SQL Database Hyperscale
max_page_server_reads bigint Det maximala antalet sidserverläsningar som denna trigger någonsin har utfört under en enskild exekvering.

Gäller för: Azure SQL Database Hyperscale

Anmärkningar

I SQL Database kan dynamiska hanteringsvyer inte exponera information som skulle påverka databasinnehållet eller avslöja information om andra databaser som användaren har tillgång till. För att undvika att exponera den här informationen filtreras varje rad som innehåller data som inte tillhör den anslutna klientorganisationen bort.

Statistik i vyn uppdateras när en fråga är slutförd.

Permissions

På SQL Server och SQL Managed Instance kräver VIEW SERVER STATE behörighet.

I SQL Database Grundläggande, S0och S1 tjänstmål och för databaser i elastiska pooler, serveradministratör konto, Microsoft Entra-administratör konto eller medlemskap i ##MS_ServerStateReader##serverrollen krävs. För alla andra SQL Database-tjänstmål krävs antingen VIEW DATABASE STATE behörighet för databasen eller medlemskap i ##MS_ServerStateReader## serverrollen.

Behörigheter för SQL Server 2022 och senare

Kräver BEHÖRIGHET FÖR VISNINGSSERVERNS PRESTANDATILLSTÅND på servern.

Examples

Följande exempel ger information om de fem främsta triggers identifierade av genomsnittlig förfluten tid.

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;  

Se även

Körningsrelaterade vyer och funktioner för dynamisk hantering (Transact-SQL)
sys.dm_exec_sql_text (Transact-SQL)
sys.dm_exec_query_stats (Transact-SQL)
sys.dm_exec_procedure_stats (Transact-SQL)
sys.dm_exec_cached_plans (Transact-SQL)