应该是:
declare @i int,@counter int,@id int
set @i=1
set @counter=4
while @i<=@counter
begin
 select @id=@i,
 @i=@i+1
end

解决方案 »

  1.   

    declare @i int,@counter int,@id int
    set @i=1
    set @counter=4
    while @i<=@counter
    begin
     select @id=@i,
     @i=@i+1
    end
      

  2.   

    石头,先谢了,等下结帖给分:
    1.为什么要用逗号分开,同样是赋值,在循环外就不要
    2.把select @id=@i换成
      set @id=@i就不行了
      

  3.   

    Select 可以多行赋值,而set只能单个赋值。其他的区别很小了。