是否有一种方法可以查看在给定时间段内仅使用SSMS插入到数据库中的数据量?



是否有一种方法可以在SQL Server Management Studio中单独查看在一段时间内插入到数据库中的数据量?这种跟踪有特定的工具,但我只是好奇这种信息是否可以在SSMS的报告中查询或查看。

谢谢!

我可以想到三种方法,你可以找到多少数据插入到一个表中,只使用SQL Server

  1. 触发器-您可以定义触发器,将信息存储在一个单独的表中,为插入的每一行添加额外的信息,如插入的时间和插入的登录等。

  2. fn_blog—如果您的数据库处于完全恢复模式,您可以查看日志文件(ldf)并查看已发生的所有事务。当然,这将在日志备份后删除,然后将所有这些信息写入日志备份文件。要访问它,可以使用fn_dbdumplog。然而,要理解内容是一项超凡脱俗的任务,通常第三方软件使用此功能解码数据并以一种良好的方式呈现给您。然而,这个家伙写了一个存储过程,它可以解码fn_blog并给出删除的行。非常有用的使用数据恢复的存储过程。但是小改动也可以给你插入。然而,他还没有写fn_dbdumplog(也许他写了,但没有公开分享),所以你只能看到那些仍然在ldf中,没有超出使用他的sp。

  3. 通过设计在表中保留时间戳-每次插入新行时,根据数据库设计,如果插入查询包含getdate函数并将其与其他数据一起存储在表中,则可以始终知道在指定时间范围内插入表中的所有行。

最新更新