求一个古怪的Insert语句,对一个只有一个IDENTITY字段的表进行插值
这个表是从Informix迁移过来的,表中只有一个字段,并且是IDENTITY的,原来Informix用了一个语句INSERT into ftable1 (col1) values (0)
从表中数据看来,并不存在0的结果,估计是会自动插入IDENTITY值。
现在MSSQL怎么改写这个语句?
我有一个办法是往表中加入一个其它字段,平时没有用的,只是在这个插值时用一下。现在不想改表结构,也不想改变IDENTITY_INSERT的设置,想看看高手们有没有其他办法。

解决方案 »

  1.   

    改变IDENTITY_INSERT的设置 插入数据后再恢复嘛
      

  2.   

    SET IDENTITY_INSERT
    允许将显式值插入表的标识列中。语法
    SET IDENTITY_INSERT [ database.[ owner.] ] { table } { ON | OFF }
      

  3.   

    改变IDENTITY_INSERT设置的方法很不好啊,还不如加一个多余字段的好。
    还要琢磨被插入的值是多少。
    我不喜欢。
      

  4.   

    只要是向IDENTITY字段显示插入值,即使是你多加个字段,用update语句更新,
    都要将对IDENTITY_INSERT进行设置
      

  5.   

    对于自增长的字段就要用 set identity_insert 了