PLSQL数据库事件触发器

PLSQL数据库事件触发器,plsql,Plsql,假设一个名为“SD”的模式包含100个表、25个过程等。创建一个触发器来通知我在过程中所做的修改(如果)、其他用户的登录/注销等是否可行? 如果是,如何跟踪现有过程代码中的更改,即表的创建/删除 下面的触发器“logon”在日志文件(=表log\u事件)中插入登录的用户: CREATE OR REPLACE TRIGGER logon AFTER LOGON ON SCHEMA BEGIN INSERT INTO log_events (used_id,log_date,action) V

假设一个名为“SD”的模式包含100个表、25个过程等。创建一个触发器来通知我在过程中所做的修改(如果)、其他用户的登录/注销等是否可行? 如果是,如何跟踪现有过程代码中的更改,即表的创建/删除

下面的触发器“logon”在日志文件(=表log\u事件)中插入登录的用户:

CREATE OR REPLACE TRIGGER logon
AFTER LOGON ON SCHEMA
BEGIN 
 INSERT INTO log_events (used_id,log_date,action)
 VALUES (USER,SYSDATE, 'Log on');
END;

--log_events: 
CREATE TABLE log_events ( user_id VARCHAR2(50), log_date DATE, action VARCHAR2(50))

DDL事件触发器不适合您吗?例如,创建、修改或删除后的触发器
应在表或过程更改后触发。

DDL事件触发器工作,但在监视架构中的修改(即新插入的表或修改的过程)时,我需要根据表或过程创建触发器。。。。或者复合触发器可以达到我的目的?AFAICT,这样的触发器在模式上声明为
,如果在任何相关的模式事件上触发,也就是说,在创建新表或修改现有过程时,等等。至少。唉,我从来没有在现实生活中使用过这些,我甚至没有在附近安装Oracle来检查它。