create or replace trigger monitor_udpate_member
after update on member
declare
ls_osuser varchar2(200) ;
ls_ipaddress varchar2(200) ;
ls_sessionuser varchar2(200) ;
ls_client_info varchar2(200) ;
n number;
stmt varchar2(4000);
sql_text ora_name_list_t;
begin
select nvl( upper(trim(sys_context( 'userenv' , 'os_user' ))) , ' ' ) ,
nvl( upper(trim(sys_context( 'userenv' , 'ip_address' ))) , ' ' ) ,
nvl( upper(trim(sys_context( 'userenv' , 'session_user' ))) , ' ' ) ,
nvl( upper(trim(sys_context( 'userenv' , 'client_info' ))) , ' ' )
into ls_osuser , ls_ipaddress , ls_sessionuser , ls_client_info
from dual;
n := ora_sql_txt(sql_text);
FOR i IN 1..n LOOP
stmt := stmt || sql_text(i);
END LOOP;
insert into japan.monitor_udpate values(ls_osuser,ls_ipaddress,ls_sessionuser,ls_client_info,sysdate,'member',stmt);
exception
when no_data_found then
ls_osuser := ' ';
ls_ipaddress := ' ';
ls_sessionuser := ' ';
ls_client_info := ' ';
end monitor_delete_company;
after update on member
declare
ls_osuser varchar2(200) ;
ls_ipaddress varchar2(200) ;
ls_sessionuser varchar2(200) ;
ls_client_info varchar2(200) ;
n number;
stmt varchar2(4000);
sql_text ora_name_list_t;
begin
select nvl( upper(trim(sys_context( 'userenv' , 'os_user' ))) , ' ' ) ,
nvl( upper(trim(sys_context( 'userenv' , 'ip_address' ))) , ' ' ) ,
nvl( upper(trim(sys_context( 'userenv' , 'session_user' ))) , ' ' ) ,
nvl( upper(trim(sys_context( 'userenv' , 'client_info' ))) , ' ' )
into ls_osuser , ls_ipaddress , ls_sessionuser , ls_client_info
from dual;
n := ora_sql_txt(sql_text);
FOR i IN 1..n LOOP
stmt := stmt || sql_text(i);
END LOOP;
insert into japan.monitor_udpate values(ls_osuser,ls_ipaddress,ls_sessionuser,ls_client_info,sysdate,'member',stmt);
exception
when no_data_found then
ls_osuser := ' ';
ls_ipaddress := ' ';
ls_sessionuser := ' ';
ls_client_info := ' ';
end monitor_delete_company;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30821/viewspace-608253/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30821/viewspace-608253/