繁体   English   中英

Oracle:如何计算两个日期之间数据库中的插入次数

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM