Rebuild all indexes of all tables in SQL 2005

In order to rebuild all index on your table, use the DBCC DBREINDEX. DBCC DBREINDEX rebuilds one or more indexes for a table in the specified database.

The syntax for DBCC DBREINDEX is as follows:

DBCC DBREINDEX
(
'table_name'
[ , 'index_name' [ , fillfactor ] ]
)
[ WITH NO_INFOMSGS ]


where table_name is the table for which the indexes are to rebuild, index_name is the index to be rebuild and fillfactor is % of space on each index page which will be used to store data when the index is rebuilt.

QUERY to rebuild all indexes

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

Note: DBCC DBREINDEX has been deprecated in SQL 2005. Microsoft says "This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature. Use ALTER INDEX instead."

1 comment:

  1. It is deprecated. And you will have better performance with ALTER INDEX

    ReplyDelete