插入批记录

时间:2010-06-25 08:30:25

标签: c# sql-server

最好的插入方式是什么,将代码后面的批处理记录更新到ms sql?

2 个答案:

答案 0 :(得分:1)

就INSERT而言,SqlBulkCopy是将数据批量加载到SQL Server的最快方法。我发表了关于如何使用它/演示性能here的博客 - 与使用SqlDataAdapter通过SqlDataAdapter.Update结合SqlDataAdapter.InsertCommand发送批量插入的其他方法进行比较。

就UPDATE而言,一种技术是使用SqlBulkCopy将数据批量加载到数据库中的“临时”临时表中。然后,从此临时表中对基础表运行更新。或者,您可以将SqlDataAdapter.Update方法与SqlDataAdapter.UpdateCommand结合使用

对于原始吞吐量,SqlBulkCopy(仅限INSERT)是理想的方式。但是,为了处理特定记录的错误,SqlDataAdapter方法很好,因为您可以告诉它在发生故障时继续向DB发送行(例如,假设您在特定记录上遇到约束错误,您可以选择{ {3}},然后在最后识别出错误的那些。

答案 1 :(得分:0)

取决于数据访问层的外观。如果您使用的是企业库,那么我会说this。如果你使用linq到sql那么this