不能直接修改为标识列:
可以先加新的标识列,再设置允许修改标识列,再用原来的字段值填充标识列,再删除原字段,再对字段改名ALTER TABLE 表 ADD 编号1 bigint identity(1,1) not null
go
SET IDENTITY_INSERT 表 ON
go
update 表 set 编号1=编号
go
SET IDENTITY_INSERT 表 OFF
go
ALTER TABLE 表 DROP COLUMN 编号 
go
exec sp_rename '表.编号1','编号'
go

解决方案 »

  1.   

    alter table yourtable add column1 bigint(1,1) not null
      

  2.   

    alter table yourtable add colname int identity(1000,1) not for replication
      

  3.   

    我的意思是将有标识的列改为无标识,然后修改其中的值,最后再将其修改为有标识的列,除了CrazyFor(太阳下山明朝依旧爬上来) 的办法外,还有其他的办法吗,各位帮帮忙??
      

  4.   

    pls refer dbcc checkident bol
      

  5.   

    SET IDENTITY_INSERT 表 ON
      

  6.   

    alter table tablename add id1 intupdate tablename set id1=idalter table tablename drop column idexec sp_rename 'tablename.id1','id'或select cast (id as int) id,列..... into #temp from 表
    drop table 表
    select * into 表 from #temp
    drop table #temp
      

  7.   

    to CrazyFor(太阳下山明朝依旧爬上来)
       因为一个表中只能有一个标识列,所以你的方法不行,不能添加标识列
    to  pengdali(大力 V2.0)
        你这样修改之后,表中已没有标识列
    在企业表设计器中可以将标识列修改,所以应该可以用编程的方式修改,不知SQL-DMO中是否有相关的方法,有用过的朋友请帮帮忙