SQLServer重建索引

Posted ruralcraftsman

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQLServer重建索引相关的知识,希望对你有一定的参考价值。

Use [数据库名称]
Go 
DECLARE @DBCCString NVARCHAR(1000)
DECLARE @TableName VARCHAR(100)
DECLARE Cur_Index CURSOR
FOR
  SELECT Name AS TblName
  FROM sysobjects 
  WHERE xType=U
  ORDER BY TblName
FOR READ ONLY
OPEN Cur_Index
FETCH NEXT FROM Cur_Index
INTO @TableName
WHILE @@FETCH_STATUS=0
BEGIN
   SET @DBCCString = DBCC DBREINDEX(@TblName,‘‘‘‘)WITH NO_INFOMSGS
   EXEC SP_EXECUTESQL  @DBCCString,N@TblName VARCHAR(100), @TableName
   PRINT 重建表 + @TableName +的索引........OK!
 FETCH NEXT FROM Cur_Index INTO @TableName
END
CLOSE Cur_Index
DEALLOCATE Cur_Index
PRINT 操作完成!
go 


DBCC UPDATEUSAGE(0);

 

以上是关于SQLServer重建索引的主要内容,如果未能解决你的问题,请参考以下文章

SQLServer重建索引

Sql server 创建索引后,只有查询后重建才会生效,不知为啥?

SQL Server中是否可以准确获取最后一次索引重建的时间?

SQL Server获取索引创建时间&重建时间&重组时间

重组索引、重建索引和重组表

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