数据库中没有对修改记录留痕迹的设计,要求用其他开发工具,做到当修改记录时候,自己写一段处理代码。
插入的时候痕迹明显,可以用唯一ID来获取,但是修改的时候就感觉无从下手了,现正尝试用Oracle中自带的操作日志来实现,但是资料还搜集不全。
那位大大有关于ORacle自带操作日志的相关资料,以及其他方法的请多多赐教。
插入的时候痕迹明显,可以用唯一ID来获取,但是修改的时候就感觉无从下手了,现正尝试用Oracle中自带的操作日志来实现,但是资料还搜集不全。
那位大大有关于ORacle自带操作日志的相关资料,以及其他方法的请多多赐教。
解决方案 »
- 帮帮我吧,我就想往表中添加数据。
- !!!尊敬的数据库高手请您关注给予指导oralce 和sql server 问题,急急急!!!!
- 数据同步,能提供一下方案吗?
- 数据库取数据放到excel中问题
- Oracle Spatial建立数据库时有关各地物属性信息的存放问题?
- 为什么我用从user_col_comments搜索出来的列显示的顺序和我数据表的列顺序不一样?
- TRUNCATE TABLE 语句中可以带有where字句吗?
- 把序列重新设为“1”,怎么实现?(Oracle 9i中)
- oracle 8i DBA studio 编辑表字段类型的小问题?
- 一个意想不到的问题
- 哪儿出问题了:oracle8+jsp+连接池+tomcat4写的分页程序,频繁刷新多次页面tomcat就出错"内存溢出"?
- 问题:1、动态执行Sql;2、创建临时表
AFTER CREATE ON SCHEMA
begin
insert into aa values(sys.ojbect_name,....);
end;
/
把创建对象数据插到aa表上
可以描叙下Oracle的审计功能么?
/**
* drop語句的審計日誌表
*/
create table drop_log
(
session_id int not null, -- sessionid
drop_time date, -- drop的時間
ip_address varchar2(20), -- ip地址
object_owner varchar2(30), -- 對象的擁有者
object_name varchar2(30), -- 對象名稱
object_type varchar2(20), -- 對象類型
drop_by_user varchar2(30) -- 執行drop語句的用戶
);create or replace trigger drop_info
after drop on mfg0513user.schema -- 在mfg0513user用戶上創建審計drop的觸發器
begin
insert into drop_log
(session_id,
drop_time,
ip_address,
object_owner,
object_name,
object_type,
drop_by_user)
values(USERENV('SESSIONID'),
sysdate,
SYS_CONTEXT('USERENV','IP_ADDRESS'),
sys.dictionary_obj_owner,
sys.dictionary_obj_name,
sys.dictionary_obj_type,
sys.login_user);
end;執行drop的語句我沒有辦法給你抓出來,就像你說的那樣,v$sql不紀錄DDL語句,
不過對象名稱和對象類型都可以抓出來,我想這對你來說應該足夠了.另外:create和alter動作都可以按照上面的方式建類似的表和類似的觸發器做到.
希望對你有所幫助.