我正在开发一个订单系统,其中可以包含 1 到 200 多个订单。现在我们有一个循环遍历每个订单并将其插入数据库。使用 SqlBulkCopy 有意义吗?使用它会降低小订单的性能吗?还有其他加速插入的技术吗?
谢谢!
我正在开发一个订单系统,其中可以包含 1 到 200 多个订单。现在我们有一个循环遍历每个订单并将其插入数据库。使用 SqlBulkCopy 有意义吗?使用它会降低小订单的性能吗?还有其他加速插入的技术吗?
谢谢!
基本上你可以做几件事。
using SqlBulkCopy.WriteToServer
which 不能很好地与 EF 一起使用,但是有几次尝试创建扩展
使用存储过程,该过程将获取一条大记录并根据某些逻辑对其进行拆分
使用表类型的存储过程参数并对存储过程进行一次调用(以及存储过程中insert ... select
的多次调用)
总的来说,我更喜欢第三种选择。
检查这个问题Entity Framework Stored Procedure Table Value Parameter