sql server 复制相同表批量插入数据报仅当使用列列表并且 IDENTITY_INSERT 为ON时
sql server 复制相同表批量插入数据
insert into 表 select * from 表
错误
仅当使用列列表并且 IDENTITY_INSERT 为ON时,才能为表“XXX”中的标识列指定显式值
主要是由于表主键int 类型自增列 导致的。
处理
SET IDENTITY_INSERT [dbo].[复制表] ON insert into [dbo].[复制表](字段) select * from [dbo].[表] SET IDENTITY_INSERT [dbo].[复制表] off
插入 insert into 表(字段)要标注的
如果主键不是自增列可以直接执行
insert into [dbo].[复制表] select * from [dbo].[表]
如果 执行
SET IDENTITY_INSERT [dbo].[复制表] ON
会提示
表 ' ' 没有标识属性。无法执行 SET 操作。