求批量创建索引的sql2000的语句,比如表名字是以"k"打头的所有表,批量创建它们的聚合索引,(它们的表结构一样)
我想一次性创建完成,表太多了

解决方案 »

  1.   

    将库中所有以'K'开头的表名放进临时表(表名varchar(50),标识identity(1,1))中,再用循环拼接字符串exec执行
      

  2.   

    Declare @Name varchar(100)
    Declare @strSql varchar(8000) Declare icursor cursor
    for
    select name from sysobjects where xType = 'U' and left(name,1) = 'k'open icursor
    fetch next from icursor into @Namewhile (@@fetch_status=0)
    begin
    set @strSql = 'CREATE CLUSTERED INDEX index_'+@Name+' ON '+@Name+' ([UserID] ASC,[CourseID] ASC) ON [PRIMARY]'
    exec(@strSql)
    set @strSql = ''
    fetch next from icursor into @Name
    endclose icursor
    deallocate icursor
    没有测试,有问题自行解决。