Linq to Entities 循环多次增删改操作,一次还是多次SaveChanges()比较好? 200

比如说数据库是sqlserver,表T内有100行记录,我现在要全部删除,那我是每删一条save一下好呢,还是全部删完再把保存一次?请从性能和安全性等方面来比较?... 比如说数据库是sqlserver,表T内有100行记录,我现在要全部删除,那我是每删一条save一下好呢,还是全部删完再把保存一次?
请从性能和安全性等方面来比较?
展开
 我来答
heavensend
2014-05-29 · TA获得超过693个赞
知道小有建树答主
回答量:252
采纳率:95%
帮助的人:165万
展开全部
如果你这个表里100条记录不变更,建议一次删完,用TRUNCATE TABLE T来做效率应该是最高的。
另外一种情况,在正式生产环节下,肯定是逐条处理比较合理。
追问
  1. 我没有说要删除整个表,上面只是拿删除来举例。

  2. “肯定”是怎么来的?逐条性能如何?

追答
简单来说吧,每次提交数据库操作,数据库端一定会有消耗,虽然现在数据库都会有大量的缓存避免频繁的IO,但是计算是不可避免的。
但是就生产环境来讲,一般要删除的数据都是先查询出来的。那么查询一次删一次和一次查出100条再删除,结果可能是不一致的。在大量数据写入的情况下,建议还是逐条处理
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式