如何判断audit记录是否发生了rollback或失败

[复制链接]
查看11 | 回复6 | 2010-10-8 09:31:22 | 显示全部楼层 |阅读模式
执行audit update table by access;后
会在dba_audit_trail或dba_audit_object产生审计记录
可问题是,这个update有可能在执行完后,进行回滚或失败。无论回滚或失败是否发生,都会记录,这样就对后来进行的数据筛查造成了误判
有什么方法能判断吗?
回复

使用道具 举报

千问 | 2010-10-8 09:31:22 | 显示全部楼层
UP
回复

使用道具 举报

千问 | 2010-10-8 09:31:22 | 显示全部楼层
自己用触发器做。
回复

使用道具 举报

千问 | 2010-10-8 09:31:22 | 显示全部楼层
newkidsir,
commit和rollback也能fire 触发器吗???
怎末做呀??
回复

使用道具 举报

千问 | 2010-10-8 09:31:22 | 显示全部楼层
原帖由 ccsnmoracle 于 2010-11-17 12:30 发表
newkidsir,
commit和rollback也能fire 触发器吗???
怎末做呀??

不是在commit/rollback触发,还是在表的DML的触发器里面做。楼主想要做审计,但只想保留事务成功的审计记录,那就得自己在触发器里写。回滚的时候这些审计信息被一起回滚。
回复

使用道具 举报

千问 | 2010-10-8 09:31:22 | 显示全部楼层
不好意思,昨天没什么时间来坛子
触发器做也可以,不过由于触发器失败,会导致被审计对象同时失败,这个是我不希望看到的。
另外,我也不是指向保留成功的事务,而是想对所有操作有个记录,因为后续是需要把这个记录另行处理的。
昨天也看了看这个,发现,其实失败是可以记录并标识出来的,但rollback还是不行。我在想想办法吧,毕竟logmin中的结果包含了是否回滚,所以数据库中应该会有这方面的记录才对。
回复

使用道具 举报

千问 | 2010-10-8 09:31:22 | 显示全部楼层
期待着LZ能够共享解决方案。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行