SqlServer高性能批量插入

从内存占用大小、执行时间长短、实现复杂程度来衡量几种方法

1.一次性加载数据到内存、再一条条插入

2.使用yield逐批次加载到内存,数据库中为表添加【用户自定义表类型】(又叫表值参数)和存储过程(insert Table1 select * from 参数)

3.使用SqlBulkCopy和yield

 

总结:2和3速度快;3实现简单,但需要ADO.NET2.0及以上;2需要为每张表在数据库中定义一个【表值参数】

2和3大概50万条数据/秒,内存占用20MB左右

posted @   那只狐狸  阅读(268)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
点击右上角即可分享
微信分享提示