Oracle Database comprend plusieurs vues contenant des informations sur les déclencheurs de la base de données. Nous pouvons utiliser ces vues pour renvoyer une liste de déclencheurs.
Les user_triggers
Afficher
Les user_triggers
view décrit les déclencheurs appartenant à l'utilisateur actuel.
Exemple de requête :
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;
Comme mentionné, cela ne renvoie que les déclencheurs appartenant à l'utilisateur actuel.
Pour renvoyer plus que cela, utilisez l'une des vues suivantes.
Les all_triggers
Afficher
Les all_triggers
view décrit les déclencheurs sur les tables accessibles à l'utilisateur actuel.
Si l'utilisateur a le CREATE ANY TRIGGER
privilège, cette vue décrit tous les déclencheurs de la base de données.
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;
Cette vue inclut un owner
colonne qui nous indique qui est le propriétaire, donc je l'ai inclus dans cette requête, et j'ai également trié les résultats par cette colonne.
Les dba_triggers
Afficher
Les dba_triggers
view répertorie tous les déclencheurs de la base de données :
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;
Les colonnes de cette vue sont les mêmes que celles de all_triggers
vue.