我正在尝试创建一个代理作业,用于重建附加到Deltek 6.1接口的SQL 2008 R2数据库的索引。
跑步:
exec sp_msforeachtable 'DBCC DBREINDEX("?"," ",0)'
注意到某些索引实际上变得更加分散。这可能是由于索引间距?我们已经在我们的测试和生产网络上实现了这种方式,并采用了各种不同的重建方式。表通常很大,我们在运行重建后更新统计信息。
答案 0 :(得分:0)
用于在SQL Server中重建所有表索引的脚本:
USE DatabaseName --Enter the name of the database you want to reindex
DECLARE @TableName varchar(255)
DECLARE TableCursor CURSOR FOR
SELECT table_name FROM information_schema.tables
WHERE table_type = 'base table'
OPEN TableCursor
FETCH NEXT FROM TableCursor INTO @TableName
WHILE @@FETCH_STATUS = 0
BEGIN
DBCC DBREINDEX(@TableName,' ',90)
FETCH NEXT FROM TableCursor INTO @TableName
END
CLOSE TableCursor
DEALLOCATE TableCursor