所以我的问题是,当您更新/插入5k – 10k行时,确实没有问题,但是50k及更多行.
我的第一个想法是使用sql server 2008 MERGE命令,但如果它是50k行我有一些性能考虑.另外,我不知道我是否可以基于主ID键(int)而不是基于表中的其他唯一键来以这种方式输入数据. (确切地说,产品序列号不会随时间变化).
我的第二个想法是先获取所有产品系列,然后将新数据序列与之比较,并将其划分为数据以插入和更新数据,然后只进行一次批量插入和一次批量更新.
我只是不知道哪个更好,用MERGE我不知道性能是什么,只有sql server 2008支持它,但它看起来很简单,第二个选项不需要sql 2008,批量应该很快,但首先选择所有连续出版物并根据它们进行划分可能会有一些性能损失.
你有什么看法,选择什么?
解决方法 更好地合并性能方式因为“MERGE语句最重要的优点之一是所有数据只被读取和处理一次”您不需要主键,您可以加入一个或多个字段,使您的记录与众不同
总结以上是内存溢出为你收集整理的c# – 插入或更新方案中的SQL Server批量插入/更新与MERGE全部内容,希望文章能够帮你解决c# – 插入或更新方案中的SQL Server批量插入/更新与MERGE所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)