C# 如何仅复制一行并将其粘贴到该表中

C# 如何仅复制一行并将其粘贴到该表中,c#,winforms,sql-insert,C#,Winforms,Sql Insert,我有一个表格表格a,它有十行,id表格的行从1到10。我将id_行设置为“Identity Increment=true”-强制。但是现在,我想复制第7行=>表A将有11行(并粘贴到这个表A中)。我写道: INSERT INTO table_A SELECT * FROM table_A WHERE id_Row = '7' 但我有一个错误: An explicit value for the identity column in table 'table_A' can only be sp

我有一个表格表格a,它有十行,id表格的行从1到10。我将id_行设置为“Identity Increment=true”-强制。但是现在,我想复制第7行=>表A将有11行(并粘贴到这个表A中)。我写道:

INSERT INTO table_A SELECT * FROM  table_A WHERE id_Row = '7'
但我有一个错误:

An explicit value for the identity column in table 'table_A' can only be specified when a column list is used and IDENTITY_INSERT is ON.
有人能告诉我怎么修理吗?

您有两个选择:

1:在插入之前使用此脚本(如果
id\u Row='7'
中不存在
表A
):


2:如果
id\u Row='7'
存在于
表A
中,请明确使用列列表


检查这一个这列是主键吗?你有明确的地图列…就像@Sheradil说的查看链接,如果你在谷歌搜索你的错误,你会得到第一个结果“\_(ツ)_/''您可以使用object来生成连续的数字。当您需要插入任意数字时,只需不按顺序生成数字。
id\u Row='7'
存在于
表A中,并且它有很多列,因此我不想手动键入所有列。那么,我该怎么办?
SET IDENTITY_INSERT table_A  On

INSERT INTO table_A
SELECT * FROM  table_A WHERE id_Row = '7'

SET IDENTITY_INSERT table_A  Off
 INSERT INTO table_A 
 SELECT x,y,z,... FROM  table_A WHERE id_Row = '7'