仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'xxxx'中的标识列指定显式值

Posted zev_fung

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'xxxx'中的标识列指定显式值相关的知识,希望对你有一定的参考价值。

执行以下sql

INSERT INTO [Country] VALUES (1, N中国, NChina, NCN); 

提示错误

仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表xxxx中的标识列指定显式值

 

解决方法:

在执行sql前后分别加:SET IDENTITY_INSERT [dbo].[Country] ON 和 SET IDENTITY_INSERT [dbo].[Country] OFF

同时修改sql语句:INSERT INTO [Country] ([SysNo], [Name], [English], [Code]) VALUES (1, N‘安哥拉‘, N‘Angola‘, N‘AO‘)

 

SET IDENTITY_INSERT [dbo].[Country] ON
INSERT INTO [Country] ([ID], [Name], [English], [Code]) VALUES (1, N中国, N‘China, N‘CN)
SET IDENTITY_INSERT [dbo].[Country] OFF

 

以上是关于仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表'xxxx'中的标识列指定显式值的主要内容,如果未能解决你的问题,请参考以下文章