O Oracle Database inclui várias exibições que contêm informações sobre gatilhos no banco de dados. Podemos usar essas visualizações para retornar uma lista de gatilhos.
Os user_triggers
Visualizar
Os
user_triggers
view descreve os gatilhos de propriedade do usuário atual. Exemplo de consulta:
SELECT
trigger_name,
trigger_type,
triggering_event,
table_owner,
table_name,
base_object_type,
status,
trigger_body
FROM
user_triggers
ORDER BY
trigger_name ASC,
base_object_type ASC,
table_name ASC;
Conforme mencionado, isso retorna apenas os gatilhos pertencentes ao usuário atual.
Para retornar mais do que isso, use uma das exibições a seguir.
Os all_triggers
Visualizar
Os
all_triggers
view descreve os gatilhos em tabelas acessíveis ao usuário atual. Se o usuário tiver o
CREATE ANY TRIGGER
privilégio, então esta visão descreve todos os gatilhos no banco de dados. SELECT
owner,
trigger_name,
trigger_type,
triggering_event,
table_owner,
table_name,
base_object_type,
status,
trigger_body
FROM
all_triggers
ORDER BY
owner ASC,
trigger_name ASC,
base_object_type ASC,
table_name ASC;
Esta visualização inclui um
owner
coluna que nos diz quem é o proprietário, então incluí isso nesta consulta e também classifiquei os resultados por essa coluna. Os dba_triggers
Visualizar
Os
dba_triggers
view lista todos os gatilhos no banco de dados:SELECT
owner,
trigger_name,
trigger_type,
triggering_event,
table_owner,
table_name,
base_object_type,
status,
trigger_body
FROM
dba_triggers
ORDER BY
owner ASC,
trigger_name ASC,
base_object_type ASC,
table_name ASC;
As colunas desta visualização são as mesmas de
all_triggers
visualizar.