1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| SQL> CREATE OR REPLACE TRIGGER log_trig
2 after DDL on database
3 declare
4 var_user varchar2(30);
5 var_osuser varchar2(30);
6 var_DDL_TYPE VARCHAR2(255);
7 var_object_type VARCHAR2(255);
8 var_object_name VARCHAR2(255);
9 var_machine varchar2(64);
10 var_process varchar2(8);
11 var_program varchar2(48);
12 begin
13 select
14 username,
15 osuser,
16 ora_sysevent,
17 ora_dict_obj_type,
18 ora_dict_obj_name,
19 machine,
20 process,
21 program
22 into
23 var_user,
24 var_osuser,
25 var_DDL_TYPE,
26 var_object_type,
27 var_object_name,
28 var_machine,
29 var_process,
30 var_program
31 from
32 v$session
33 where
34 audsid=userenv('sessionid');
35
36 insert into
37 system.stats_server_log
38 values(
39 sysdate,
40 var_user,
41 var_osuser,
42 var_DDL_TYPE,
43 var_object_type,
44 var_object_name,
45 var_machine,
46 var_process,
47 var_program);
48 end;
49 / |
Partager