Cơ sở dữ liệu Oracle bao gồm một số dạng xem chứa thông tin về các trình kích hoạt trong cơ sở dữ liệu. Chúng tôi có thể sử dụng các chế độ xem này để trả về danh sách các trình kích hoạt.
user_triggers
Xem
user_triggers
chế độ xem mô tả các trình kích hoạt do người dùng hiện tại sở hữu.
Ví dụ về truy vấn:
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;
Như đã đề cập, điều này chỉ trả về những trình kích hoạt do người dùng hiện tại sở hữu.
Để trả lại nhiều hơn thế, hãy sử dụng một trong các chế độ xem sau.
all_triggers
Xem
all_triggers
chế độ xem mô tả các trình kích hoạt trên các bảng mà người dùng hiện tại có thể truy cập.
Nếu người dùng có CREATE ANY TRIGGER
đặc quyền, thì dạng xem này mô tả tất cả các trình kích hoạt trong cơ sở dữ liệu.
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;
Chế độ xem này bao gồm một owner
cho chúng tôi biết chủ sở hữu là ai, vì vậy tôi đã đưa nó vào truy vấn này và cũng sắp xếp kết quả theo cột đó.
dba_triggers
Xem
dba_triggers
xem danh sách tất cả các trình kích hoạt trong cơ sở dữ liệu:
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;
Các cột của chế độ xem này giống với các cột trong all_triggers
xem.