declare @ varchar(100)
declare @ss varchar(20)
set @ss='ff'
set @='alter table temp1  add column '+ @ss+' varchar(20)'
exec(@)

解决方案 »

  1.   

    上面的语句不符合要求阿
    如果我要加10个字段,我就要执行10次该存储过程,效率也太低了吧
    烦劳帮我改一下下面的存储过程。
    create procedure te_proc1
    as
    declare @i int
    declare @ss nvarchar(20)
    declare @sql char(50)
      set @i=1 
      while @i<10   
      begin
      @ss='a'+cast(@i as nvarchar(10))
      set @sql='alter table t1 add '+@ss+' varchar(20)'
      exec (@sql)
      set @i=@i+1
      if @i=10 break
      else
        continue
      end 
    go