Oracle Database innehåller flera vyer som innehåller information om utlösare i databasen. Vi kan använda dessa vyer för att returnera en lista med utlösare.
user_triggers
Visa
user_triggers
vyn beskriver utlösare som ägs av den nuvarande användaren.
Fråga exempel:
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;
Som nämnts returnerar detta endast de triggers som ägs av den aktuella användaren.
För att returnera mer än så, använd en av följande vyer.
all_triggers
Visa
all_triggers
vyn beskriver utlösare på tabeller som är tillgängliga för den aktuella användaren.
Om användaren har CREATE ANY TRIGGER
privilegium, då beskriver denna vy alla utlösare i databasen.
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;
Den här vyn innehåller en owner
kolumn som talar om för oss vem ägaren är, så jag har tagit med det i den här frågan och även sorterat resultaten efter den kolumnen.
dba_triggers
Visa
dba_triggers
view listar alla utlösare i databasen:
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;
Den här vyns kolumner är desamma som de i all_triggers
visa.