数据库中有个表每天都有更新删除,追加的操作,如何能查询出这个表每天总共有多少条记录??有办法吗

解决方案 »

  1.   

    挺着急的,因为我想知道为什么batch 运行的慢了,想确定表数据变化
      

  2.   

    很简单,写个触发器,当对这个表进行相应的操作进,触发器执行,将insert, updapte, delete操作的个数记录在另一个自己的数据库表中,即可。一天之后,查看记录的数据库表,就可以知道了。
      

  3.   

    别一种方式就是使用数据库审计功能,下面以Oracle 11g R2为例进行详细说明。1.用sys用户以sysdba身份登录。
    2.设置audit_trail参数,ALTER SYSTEM SET AUDIT_TRAIL=DB, EXTENDED SCOPE=SPFILE;
    3.关闭数据库,并重新启动:SHUTDOWN; STARTUP;
    4.设置对象审计:AUDIT ALL ON 指定的表名;(对查询、插入、删除、更新)都进行统计
    5.查询审计信息,信息存储在sys下的AUD$表中
    6.完成后,清除审计数据:DELETE FROM sys.aud$ where obj$name='你的表名';