我发现Sam Saffron发表了一篇关于使用Dapper
进行批量插入的文章( 使用dapper将数据导入数据库时出现令人烦恼的插入问题 ),他在文章中结束了该文章:
例如,如果您需要一种超快速的方法将大量内容插入到SQL数据库中,那么没有什么比SqlBulkCopy更好的了,您将需要一个自定义API。
这篇文章已有4年多了。
我最近偶然发现Dapper Plus声称能够在2,000ms内完成1,000,000行,根据我发现的许多旧的性能文章(例如这个 - 评估批量数据的 ORM),它似乎胜过SqlBulkCopy
。
遗憾的是,我的Google-fu未能找到这两种批量导入方法之间最近的性能比较。
问题: SqlBulkCopy
是否仍然比Dapper.NET
快?
免责声明 :我是Dapper Plus项目的所有者
当有足够的实体保存时,SQL Server / Azure的Dapper Plus使用SqlBulkCopy,否则它将使用SQL派生表。
本文是关于实体框架的,但如果您需要更多信息,它与Dapper的策略相同: 实体框架如何在SQL Server中批量插入
所以,我们的库显然没有超越SqlBulkCopy,它具有相同的性能,但我们的库使它更容易使用。
该图书馆还支持:
使用SqlBulkCopy和临时表技巧。