Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1428286
  • 博文数量: 556
  • 博客积分: 12626
  • 博客等级: 上将
  • 技术积分: 5799
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-11 15:56
个人简介

从事IT基础架构多年,发现自己原来更合适去当老师……喜欢关注新鲜事物,不仅限于IT领域。

文章分类

全部博文(556)

文章存档

2019年(6)

2018年(15)

2017年(17)

2016年(11)

2015年(2)

2014年(2)

2013年(36)

2012年(54)

2011年(100)

2010年(41)

2009年(72)

2008年(14)

2007年(82)

2006年(104)

分类: Oracle

2006-02-15 15:40:10

SQL> create table t1(a number);
表已创建。
SQL> create table t_sql(username varchar2(30),
  2  client_ip varchar2(20),sql_text varchar2(4000),
  3  table_name varchar2(30),owner varchar2(30));
表已创建。
 
SQL> create or replace trigger capt_sql
  2   BEFORE DELETE OR INSERT OR UPDATE ON t1
  3   declare
  4   n        number;
  5   stmt     varchar2(4000);
  6   sql_text ora_name_list_t;
  7   begin
  8   n := ora_sql_txt(sql_text);
  9   FOR i IN 1..n LOOP
 10    stmt := stmt || sql_text(i);
 11   END LOOP;
 12
 13   insert into t_sql(USERNAME,CLIENT_IP,SQL_TEXT,TABLE_NAME,OWNER)
 14               values(user,sys_context('userenv','ip_address'),stmt,'T1','RAINY');
 15
 16   end;
 17  /
触发器已创建
SQL>
SQL> insert into t1 values(1);
已创建 1 行。
SQL> commit;
提交完成。
SQL> select * from t_sql
  2  ;
USERNAME                       CLIENT_IP
------------------------------ --------------------
SQL_TEXT
----------------------------------------------------
TABLE_NAME                     OWNER
------------------------------ ---------------------
SYSTEM
insert into t1 values(1)
T1                             RAINY
 
 
阅读(836) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~