现在数据库业务表中发现部分数据被删除,而且没有痕迹的那种。太高深的监测不会,所以想了下使用触发器查找delete语句。数据库是10g的。
使用 v$sqlarea 和 v$session 关联。大致是这样写的select t.sql_text into v_sql from v$sqlarea t, v$session s
where t.sql_id = s.sql_id
and upper(t.sql_text) like 'DELETE%'||v_table_name||'%'
and s.audid = userenv('SESSIONID');不考虑返回多行的问题,我使用delelte from tablename where id=v_id;测试发现,根本找不到数据。
各路豪杰,大神,求助啊!!!
使用 v$sqlarea 和 v$session 关联。大致是这样写的select t.sql_text into v_sql from v$sqlarea t, v$session s
where t.sql_id = s.sql_id
and upper(t.sql_text) like 'DELETE%'||v_table_name||'%'
and s.audid = userenv('SESSIONID');不考虑返回多行的问题,我使用delelte from tablename where id=v_id;测试发现,根本找不到数据。
各路豪杰,大神,求助啊!!!
解决方案 »
- plsql 函数名@aa.bb 是什么意思啊
- plsql中有没有这样功能函数
- clob类型转换为xmlTpye
- 数据类似查找的问题
- 请问用exp可以按条件来备份oracle9i吗?
- 从oracle 主页上下载的oracle 9i企业版是几用户的,有何限制
- 大家帮忙 我要把a表中的name字段下的大写改成小写 语句怎么写 在线等待
- 一个困扰我一整天的查询问题
- 在程序中调用存储过程时出现引用超出范围是什么意思?怎么解决?
- 再100分求救,2000server+oracle9重其后oracleservice无法正常启动
- oracle 性能监控工具,sql工具(经典)
- 一个简单的查询语句,一直报 ORA-01722: 无效数字!!!!
谢谢,找到了FGA,刚好符合目前现状!