Você pode usar os
sys.triggers
exibição de catálogo para retornar uma lista de gatilhos em um banco de dados no SQL Server. Essa visualização contém uma linha para cada objeto que é um gatilho, com um tipo de TR ou TA.
Exemplo
Aqui está um exemplo de consulta de
sys.triggers
:SELECT * FROM sys.triggers;
Resultado (usando saída vertical):
-[ 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)
Eu usei a saída vertical neste exemplo para que você não precise rolar para os lados.
No meu caso, tenho apenas um gatilho neste banco de dados.
Se eu mudar para um banco de dados diferente, recebo os gatilhos nesse banco de dados. Se o banco de dados não contiver gatilhos, não obterei resultados.
USE WideWorldImporters;
SELECT * FROM sys.triggers;
Resultado:
Commands completed successfully. (0 rows affected)
Acionadores do servidor
Se você precisar retornar uma lista de acionadores do servidor, use
sys.server_triggers
em vez de sys.triggers
. Essa exibição retorna todos os gatilhos DDL de nível de servidor com object_type de TR ou TA.