使用SqlBulkCopy批量插入后获取主键列值

时间:2013-10-29 07:54:33

标签: c# sql sql-server sqlbulkcopy

任何人都可以帮我解决批量插入后如何获取主键列的列值吗?

我正在使用SqlBulkCopy一次向表中插入多行(比如表1)。插入行后,我需要表1中列MsgId(PK)的ID。我需要使用这些ID,这是另一个表中的外键表2

这是我的代码,

        DataTable dtMessageDetails = new DataTable("Message Details");
        SqlBulkCopy copier = new SqlBulkCopy(Connectionstring);
        copier.DestinationTableName = "Table 1";
        copier.WriteToServer(dtMessageDetails);

1 个答案:

答案 0 :(得分:2)

在插入批量之前锁定表格。你知道行数,如果你选择最后一个id,知道元素的总数,那么你就会知道它们的ID。