Oracle是怎么知道某张表是否有过DML操作,而DML操作又涉及到了多少行数据呢?这都是通过表监控特性(a table monitoring facility)来实现的,当初始化参数STATISTICS_LEVEL设置为TYPICAL或ALL时默认启用这种特性。Oracle会默认监控表上的INSERT,UPDATE,DELETE以及表是否被TRUNCATE,并记录这些操作数量的近似值到数据字典。我们可以通过访问 user_tab_modifications 视图来了解这些信息 .
可以通过sql trace 访问
select table_name,inserts,updates,deletes,timestamp from user_tab_modifications where table_name = xxx ,通过执行计划可以猜测 :
monitoring监控数据来源于MON_MODS_ALL$基表上 .
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-706384/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/35489/viewspace-706384/