oracle的系统事件触发器:系统事件触发器是指基于oracle系统事件(如logon和startup)所建立的触发器。通过这种触发器可以跟踪系统或数据库的变化。 create table jax_event_table(eventname varchar2(30),time date); createtrigger tr_startup after startup ondatabase begin insertinto jax_event_table values(ora_sysevent,sysdate); end; createtrigger tr_shutdown beforeshutdownondatabase begin insertinto jax_event_table values(ora_sysevent,sysdate); end; 在建立如上所示的两个触发器后,使用shutdown和startup关闭开启数据库会往表jax_event_table中记录一条记录,但 shutdown abort则不会触发该触发器,而startup nomount后使用alter database将数据库更改为mount或者open都只会触发一次。
1 SHUTDOWN 2008-3-20 14:29:47 2 STARTUP 2008-3-20 14:42:52 3 SHUTDOWN 2008-3-20 14:43:06 4 STARTUP 2008-3-20 14:45:34 登录和退出触发器用来记载登录用户名称、时间和ip地址 createtable jax_log_table( username varchar2(20), log_time date, onoff varchar(6),address varchar2(30)); createtrigger tr_logon after logon ondatabase
以上是我对于这个问题的解答,希望能够帮到大家。
全部