declare @i int
set @i=1
update tablename set @i=@i+1,newcol=@i--or
update tablename set newcol=identitycol

解决方案 »

  1.   

    我需要是先alter进一列,然后指定一个值填充这列
      

  2.   

    你们的意思是不是先把那列加上,然后再做一个update???
      

  3.   

    --如果你要给表增加一列,并生成一个+1的序号值,则可以这样:--先把列加上
    alter table 你的表 add 列名 int
    go--再生成该列的值
    declare @i int
    set @i=0
    update 你的表 set @i=@i+1,列名=@i
    --注意,这样的方法仅对表中现有的数据有效,新增加的数据不会自动赋值.