sql >> Databasteknik >  >> RDS >> Sqlserver

Returnera en lista över triggers i SQL Server

Du kan använda sys.triggers katalogvy för att returnera en lista med utlösare i en databas i SQL Server.

Denna vy innehåller en rad för varje objekt som är en utlösare, med en typ av TR eller TA.

Exempel

Här är ett exempel på att fråga sys.triggers :

SELECT * FROM sys.triggers;

Resultat (med vertikal utdata):

-[ RECORD 1 ]-------------------------
name                   | trg_Books_UpdateModifiedDate
object_id              | 1669580986
parent_class           | 1
parent_class_desc      | OBJECT_OR_COLUMN
parent_id              | 1605580758
type                   | TR
type_desc              | SQL_TRIGGER
create_date            | 2020-08-16 00:35:09.880
modify_date            | 2020-08-16 00:35:09.880
is_ms_shipped          | 0
is_disabled            | 0
is_not_for_replication | 0
is_instead_of_trigger  | 0
(1 row affected)

Jag använde vertikal utmatning i det här exemplet så att du inte behöver rulla i sidled.

I mitt fall har jag bara en trigger i den här databasen.

Om jag byter till en annan databas får jag triggers i den databasen. Om databasen inte innehåller några triggers får jag inga resultat.

USE WideWorldImporters;
SELECT * FROM sys.triggers;

Resultat:

Commands completed successfully.
(0 rows affected)

Serverutlösare

Om du behöver returnera en lista över serverutlösare, använd sys.server_triggers istället för sys.triggers .

Den vyn returnerar alla DDL-utlösare på servernivå med objekttyp TR eller TA.


  1. Hur man hittar den sista dagen i månaden för ett givet datum i MySQL

  2. Tips och knep för implementering av databasrollbaserade åtkomstkontroller för MariaDB

  3. Kör Galera Cluster på Kubernetes

  4. SQL Server Parallell Backup Restore -1