SET IDENTITY_INSERT

想要将值插入到自动编号(或者说是标识列,IDENTITY)中去,需要设定 SET IDENTITY_INSERT

语法:SET IDENTITY_INSERT 表名 ON / OFF


打开:SET IDENTITY_INSERT 表名 ON 

在这种情况下可以将值插入到自动编号中,不过表后面需要指定列

关闭:SET IDENTITY_INSERT 表名 OFF

关闭之后无法将值插入到自动编号中


例子:

SET IDENTITY_INSERT _test ON
GO
insert into _test(id,num) values(100,123)
GO

注意:表_test后面一定要指定列,否则会出现如下错误提示

    消息 8101,级别 16,状态 1,第 1 行 仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'_test'中的标识列指定显式值。

在不将值插入自动编号中的情况下,若想不指定表列而插入数据,则需要设置SET IDENTITY_INSERT OFF

SET IDENTITY_INSERT _test OFF
insert into _test values(123)


你可能感兴趣的:(sql,server,set,IDENTITY_INSERT)