[英]Oracle: how to count number of inserts in a database between two dates
我想计算两个日期之间用户创建的表中插入的数量。 例如,如果总共20个表中有5个插入到4个表中。 有没有一种方法,而无需为每个表运行查询?
它将显示表名称以及插入,更新和删除的次数:
select
table_owner,
table_name,
inserts,
updates,
deletes
from
dba_tab_modifications
where
timestamp > sysdate-1;
但是,您需要在DIMS_STATS PL / SQL程序包中运行FLUSH_DATABASE_MONITORING_INFO过程,以使用最新信息填充此视图。
您将在此处找到从数据库收集所有统计信息的过程: https : //docs.oracle.com/database/121/ARPLS/d_stats.htm#ARPLS68568
请注意,您将需要ANALYZE_ANY
特权才能启动该过程。
总结一下 :运行FLUSH_DATABASE_MONITORING_INFO
以更新数据库上的所有更改,然后使用DBMS_STATS
。 DBMS_STATS
自动收集“陈旧”的对象,这些对象是需要分析的对象。 然后从DBA_TAB_MODIFICATIONS
启动请求以打印更改。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.