首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

用sqlserver存储过程重建索引,该怎么解决

2013-01-26 
用sqlserver存储过程重建索引我用sqlserver2005,如何用存储过程重建user表的索引,并且有一个返回值来判断

用sqlserver存储过程重建索引
我用sqlserver2005,如何用存储过程重建user表的索引,并且有一个返回值来判断是否重建索引成功
[解决办法]
如果语句是你想要的,就把它放到存储过程里面

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 

热点排行