SqlBulkCopy还比Dapper快吗?

toa*_*akz 6 c# performance sqlbulkcopy dapper

我在Sam Saffron发现了一篇关于批量插入的文章Dapper(那个令人烦恼的插入问题,使用dapper将数据导入数据库),他用语句结束了文章:

例如,如果您需要一种超快速的方法将大量内容插入到SQL DB中,那么没有什么比SqlBulkCopy更好的了,您将需要一个自定义API.

这篇文章已有4年多了.

我最近偶然发现了Dapper Plus,它声称能够在2,000ms内完成1,000,000行,SqlBulkCopy根据我发现的许多旧的性能文章(例如这一个 - 评估批量数据的 ORM),它看起来表现优异.

遗憾的是,我的Google-fu未能找到这两种批量导入方法之间的最新性能比较.

问:是否SqlBulkCopy仍然比快Dapper.NET

Jon*_*nan 7

免责声明:我是Dapper Plus项目的所有者

当有足够的实体保存时,SQL Server/Azure的Dapper Plus使用SqlBulkCopy,否则它将使用SQL派生表.

本文是关于实体框架的,但如果您需要更多信息,它与Dapper的策略相同:实体框架如何在SQL Server中批量插入

所以,我们的库显然没有超越SqlBulkCopy,它的性能相同,但我们的库使它更容易使用.

该图书馆还支持:

  • BulkUpdate
  • BulkDelete
  • BulkMerge

使用SqlBulkCopy和临时表技巧.

  • 请确保开发人员知道,Dapper Plus 不是免费/开源的。一名开发商的许可费起价为每年 799 美元。一名承包商在不知情的情况下使用 Dapper Plus 构建了一些软件。只要知道,如果你安装这个,你最终将需要支付这个价格。在我看来,它的作用非常昂贵。 (2认同)
  • 感谢您的提醒,但还不太清楚。 (2认同)