Oracle Database bevat verschillende weergaven die informatie bevatten over triggers in de database. We kunnen deze weergaven gebruiken om een lijst met triggers te retourneren.
De user_triggers Bekijk
De user_triggers weergave beschrijft de triggers die eigendom zijn van de huidige gebruiker.
Vraag voorbeeld:
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; Zoals vermeld, retourneert dit alleen die triggers die eigendom zijn van de huidige gebruiker.
Gebruik een van de volgende weergaven om meer dan dat terug te geven.
De all_triggers Bekijk
De all_triggers view beschrijft de triggers op tabellen die toegankelijk zijn voor de huidige gebruiker.
Als de gebruiker de CREATE ANY TRIGGER . heeft privilege, dan beschrijft deze weergave alle triggers in de database.
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;
Deze weergave bevat een owner kolom die ons vertelt wie de eigenaar is, dus ik heb dat in deze zoekopdracht opgenomen en de resultaten ook op die kolom gesorteerd.
De dba_triggers Bekijk
De dba_triggers view toont alle triggers in de database:
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;
De kolommen van deze weergave zijn dezelfde als die in de all_triggers bekijken.