您好,我是小DAI,专注于数据库管理员相关的技术问答,请问有什么可以帮您?

sp_dbcc_differentialreport

语法


sp_dbcc_differentialreport [<dbname> [, <objectname>]], 
	[<db_op>] [, "<date1>" [, "<date2>"]]

参数

<dbname>

指定数据库的名称。如果不指定 <dbname>,报告将包含 dbccdb..dbcc_operation_log 中所有数据库的相关信息。

<objectname>

指定要为其生成报告的表或索引的名称。如果未指定 <object_name>,则报告有关目标数据库中的所有对象的统计信息。

<db_op>

指定要在报告中使用的数据源。唯一值为 checkstorage。将针对 <db_op> 指定的数据为目标数据库中的指定对象生成 <date1><date2> 的报告。如果未指定日期,将比较最近两个 <db_op> 类型的操作。

<date1

指定要比较的 dbcc checkstorage 操作的第一个日期。

<date2>

指定要比较的 dbcc checkstorage 操作的最后一个日期。

示例

示例 1

生成一个报告,用以说明在 1997 年 5 月 1 日和 1997 年 5 月 4 日之间,sysprocedures 表中 I/O 统计信息的变化及出现的故障:


sp_dbcc_differentialreport master, sysprocedures, 
    checkstorage, "05/01/97", "05/04/97"

用法

使用 sp_dbcc_differentialreport 时,还存在一些其它注意事项:

  • sp_dbcc_differentialreport 生成报告,突出说明两次 dbcc 操作之间 I/O 统计信息的变化及出现的故障。它会比较两个 dbcc checkstorage 实例报告的计数器值。只有发生变化的值才会报告出来。

  • 如果只指定一个日期,指定日期所选的 dbcc checkstorage 操作的结果将与所选操作之前的那次 dbcc checkstorage 操作的结果作比较。

  • 如果未指定任何日期,将比较最近两次 dbcc checkstorage 操作的结果。

  • 如果 sp_dbcc_differentialreport 返回的 <object_name> 为数值,则表示完成 dbcc checkstorage 操作后删除了该对象。

  • 如果指定的各次操作之间未发生任何变化,sp_dbcc_differentialreport 不会生成报告。