alter table bmdy alter column [Identity_bmdy] [numeric](18, 0) IDENTITY (1, 1) NOT NULL 错在哪?我把Identity_bmdy列修改indentity为YES

解决方案 »

  1.   

    利用Sql不能在原表上直接修改为标识列: 可以先加新的标识列,再设置允许修改标识列,再用原来的字段值填充标识列,再删除原字段,再对字段改名
      

  2.   

    原表编号不是标识列下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