在一个表里面 除了主键索引 别的索引都重新生成应该怎么写 这样一个个的话太多了DBCC DBREINDEX(T_User,'IX_T_Category') 
DBCC DBREINDEX(T_User,'IX_T_Name') 
DBCC DBREINDEX(T_User,'IX_T_UpdateTime') 
.......很多索引  有什么办法没  

解决方案 »

  1.   

    ALTER proc indexre(@dbname nvarchar(10),@tbname nvarchar(20))
    as
    begin
    declare @s nvarchar(200),@NAME VARCHAR(2000)
    declare cur_index cursor for  
    SELECt NAME FROM SYSINDEXES WHERE ID=OBJECT_ID(@tbname) AND INDID!=1

    open cur_index
    fetch next from cur_index into @NAME
    while @@FETCH_STATUS=0
    begin
    SET @S='DBCC INDEXDEFRAG('+@dbname+','+@TBNAME+','''+@NAME+''')'
    EXEC (@s);
    fetch next from cur_index into @NAME
    end
    CLOSE cur_index
    DEALLOCATE cur_index
    end
      

  2.   


    消息 102,级别 15,状态 1,过程 indexre,第 16 行
    'cur_index' 附近有语法错误。
      

  3.   

    嗯。 没注意到抱歉 indexre 这个 怎么用啊
      

  4.   


    execute indexre('EtradenowDB','T_Product_Provide')这样执行不了 郁闷