0

我有大约 1,000,000 多条记录要插入到数据库中。

应更新具有相同 ID 的记录,否则插入

更新/插入逻辑写在存储过程中

我正在使用 DataAdapter.Update 方法来完成这项工作。

这是问题所在。

一个 DataTable 不超过 65,000 条记录。

插入/更新每秒只有 60 条记录。

我怎样才能提高这种性能,我可以在这里使用 SqlBulkCopy,它可以一起做这个更新/插入吗?会有什么表现

4

1 回答 1

0

您是否将记录加载到 DataTable 中只是为了插入更新?

如果是这样,您最好一次直接调用 SP 并跳过 DataTable。

或者您可以使用 TVP 和 IEnumerable SqlDataRecord,然后您将不限于 65000。

使用 IEnumerable SqlDataRecord 的示例

于 2012-09-19T17:09:16.540 回答