查询某表最近5天内最后一次dml的时间

select ORA_ROWSCN from tablename order by 1 desc--比如值为XX
-- ORA_ROWSCN 缺省是数据块级别的,也就是一个数据块内的所有记录都是一个 ORA_ROWSCN,数据块内任意一条记录被修改, 这个数据库块内的所有记录的 ORA_ROWSCN 都会同时改变。

select scn,to_char(time_dp,'yyyy-mm-dd hh24:mi:ss')from sys.smon_scn_time where scn>XX order by 1
--sys.smon_scn_time只记录了最近5天的记录,所以该表最后一次的修改时间大于5天前,就查不到确切的时间点了。

以上两条sql也可以使用下面的替代,当然如果SCN超过最近5天的SCN则不能使用SCN_TO_TIMESTAMP函数,否则会报错--ORA-08181: 指定的编号不是有效的系统更改号
select max(ora_rowscn),to_char(scn_to_timestamp(max(ora_rowscn)),'yyyy-mm-dd hh24:mi:ss') from tablename;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30126024/viewspace-2153398/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30126024/viewspace-2153398/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值