插入标识列值
SET IDENTITY_INSERT yourtable ON

解决方案 »

  1.   

    任何时候,会话中只有一个表的 IDENTITY_INSERT 属性可以设置为 ON。如果某个表已将此属性设置为 ON,并且为另一个表发出了 SET IDENTITY_INSERT ON 语句,则 Microsoft® SQL Server™ 返回一个错误信息,指出 SET IDENTITY_INSERT 已设置为 ON 并报告此属性已设置为 ON 的表。如果插入值大于表的当前标识值,则 SQL Server 自动将新插入值作为当前标识值使用。SET IDENTITY_INSERT 的设置是在执行或运行时设置,而不是在分析时设置。
      

  2.   

    哎!你的要可以插入,就不要用identity(1,1),多此一举
      

  3.   

    我已经作了SET IDENTITY_INSERT yourtable ON
    在本地数据库中可以实现,但是要操作连接服务器
    总是不行?
      

  4.   

    cceo的文字我也看过了,未果。
    因为表原来的结构就是这么设计的,好多应用程序在
    用这个表,我也没办法呀。
    不过连接服务器可以去掉identity,本地服务器的表还用
    identity,产生的id写入到连接服务器中去。不知道是否会
    出现什么问题,那就闯祸了!!!
      

  5.   

    pengdali(大力) : 我将网站数据库服务器表的identity字段去掉,改为
     int类型,再把原来的id写到新列中,再把新列改为原来的id列名,应用
    程序会遇到什么问题吗?
      

  6.   

    在set IDENTITY_INSERT t1 on
    插入完数据后
    要将IDENTITY_INSERT 设成off
    like this:
    set IDENTITY_INSERT t1 off
    因为IDENTITY_INSERT 是全局的
      

  7.   

    如果要批量处理数据的话,set IDENTITY_INSERT t1 on没有什么意义,因为identity列是必须填的,那样必须写上表所有的字段。