簡體   English   中英

我該如何解決“表中標識列的顯式值”?

[英]How can i solve “An explicit value for the identity column in table”?

如果我嘗試向表中添加一些數據,則會發生錯誤:

錯誤:消息8101,級別16,狀態1,行1僅在使用列列表且IDENTITY_INSERT為ON時,才能為表ENG_PREP中的標識列指定一個顯式值。

insert into ENG_PREP VALUES('572012-01-1,572012-01-2,572012-01-3,572013-01-1,572013-01-2',
'',
'500',
'',
'A320 P.001-A',
'Removal of the LH Wing Safety Rope',
'',
'',
'',
'0',
'',
'AF',
'12-00-00-081-001',
'',
'',
'',
'',
'',
'',
'' )

如果必須寫入標識列,請使用

SET IDENTITY_INSERT YourTableName ON

正如錯誤消息所暗示的那樣。

否則,請勿嘗試寫入身份列。

您的聲明

insert into ENG_PREP

會嘗試將值插入到表格的所有列中-包括IDENTITY列,您永遠不要在其中插入特定值。

您需要做的是指定您要在表的哪些列中真正插入值,而忽略IDENTITY列-這將由SQL Server本身自動處理:

 INSERT INTO dbo.ENG_PREP(column1, column2, ...., columnX)
 VALUES(values1, values2, ...., valuesX)

您只需要指定您真正想要為其設置值的那些列即可(例如,您可以跳過其中大部分在示例中僅插入''的那些列)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM