2017-10-18 146 views

回答

1

SCN_TO_TIMESTAMP将作为参数的数字计算为系统更改号(SCN),并返回与该SCN关联的近似时间戳。

SELECT SCN_TO_TIMESTAMP(ORA_ROWSCN) 
FROM employees 
WHERE employee_id = 188; 

如果您有10g或更高版本,您可以使用Oracle的闪回功能获取此信息。你需要启用闪回;

select table_name ,max(commit_timestamp) 
from FLASHBACK_TRANSACTION_QUERY 
where table_owner = 'YOUR_SCHEMA' 
     and operation in ('INSERT','UPDATE','DELETE','MERGE') 
group by table_name 
+0

请注意您需要priveleges才能运行FLASHBACK_TRANSACTION_QUERY – Moudiz

0

应该没有必要参与SCNs的问题。为什么不干脆:

begin dbms_stats.flush_database_monitoring_info; end; 

select * from dba_tab_modifications 
where timestamp >= sysdate - 7 
order by timestamp desc; 

除非你(?愚蠢),只有BASIC统计级别运行(默认为TYPICAL,这是更高),这应该在任何11g数据库或更高版本的做工精细。

相关问题