当前位置: 代码迷 >> 综合 >> An explicit value for the identity column in table can only be specified when a column list is used
  详细解决方案

An explicit value for the identity column in table can only be specified when a column list is used

热度:39   发布时间:2023-12-24 13:59:02.0

原文:https://www.cnblogs.com/Flyear/p/3593897.html

如果您遇到以下错误消息:
只有在使用列列表且IDENTITY_INSERT为ON时,才能指定表“<TABLE_NAME>”中标识列的显式值。

有两个问题需要解决:
1.设置 IDENTITY_INSERT
您没有在表上启用身份插入,这意味着SQL Server不允许您插入Identity列。
这可以通过以下声明纠正:
SET IDENTITY_INSERT table_name ON
完成后再将其关闭
SET IDENTITY_INSERT table_name OFF

但是,它也可能意味着您正在使用例如INSERT INTO,其中消息告诉您指定列名称。 这意味着使用以下语法:
2.指明插入列名
eg:
SET IDENTITY_INSERT target_able_name ON
INSERT INTO target_able_name(column_name1,column_name2 … column_nameN)values(column_value1,column_value2……column_valueN)
go
set IDENTITY_INSERT target_able_name off
go

  相关解决方案