DBCC DBREINDEX('?','',80)做什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DBCC DBREINDEX('?','',80)做什么?相关的知识,希望对你有一定的参考价值。

以下陈述究竟是做什么的?它是否重新索引所有名为'?'的表填充因子为80%?

EXEC sp_MSforeachtable @command1="print '?' DBCC DBREINDEX ('?', ' ', 80)"

它确实将查询时间从23秒提高到几乎立即,但我想了解原因。

答案

不完全 - 当你使用sp_MSforeachtable时,问号是表名的占位符(因为它依次循环遍历每个表)。

回答你的评论中的第二个问题,是的 - 根据DBCC DBREINDEX关于第二个论点的文件:

如果指定了index_name,则必须指定table_name。如果未指定index_name或为“”,则重建表的所有索引。

以上是关于DBCC DBREINDEX('?','',80)做什么?的主要内容,如果未能解决你的问题,请参考以下文章

DBCC DBREINDEX重建索引提高SQL Server性能

SQLSERVER DBCC 用法说明

SQLServer数据库DBCC CHECKIDENT命令介绍

SQLServer数据库DBCC CHECKIDENT命令介绍

数据库置疑之后修复完,用 dbcc checkdb(数据库名) 检查数据的时候提示有一致性错误

修复SQL2000数据库置疑时出现的错误