zoukankan      html  css  js  c++  java
  • entity framework 5 批量增删改效率优化

    对于数据的批量增删改最慢的就是操作一条就提交一次事务。

    以下是对增删改操作的优化测试

    同样的300条数据

      批量新增只提交一次事务                                 

      用时:10673.5444ms

      批量新增只提交一次事务并把context.Configuration.AutoDetectChangesEnabled = false  

      用时:5284.5425ms

      批量修改只提交一次事务                                 

      用时:3472.8314ms

      批量修改只提交一次事务并把context.Configuration.AutoDetectChangesEnabled = false  

      用时:1993.7855ms

      批量删除只提交一次事务                                 

      用时:5961.3264ms

      批量删除只提交一次事务并把context.Configuration.AutoDetectChangesEnabled = false  

      用时:1346.8273ms

    删除有一点特别提醒,我的删除方法使用的是替身删除,而不是先从数据库查出数据再来删除。

    两种删除的方法对比

    var stu=context.Students.SingleOrDefault(s=>s.StudentNo==23230);
    context.Students.Remove(stu);
    context.SaveChanges();

    var stu=new Student{StudentNo=23230};
    context.Students.Attach(stu);
    context.Students.Remove(stu);
    context.SaveChanges();

    显然效率的提升是很明显的。

  • 相关阅读:
    rest-framework之路由
    rest-framework之频率控制
    mysql 模糊查询 concat()
    解决spring使用动态代理
    MySQL巧用sum,case...when...优化统计查询
    解决maven项目中有小红叉的问题
    google ---gson字符串数组用GSON解析然后用逗号隔开拼接,去掉最后一个逗号
    Elicpse使用技巧-打开选中文件文件夹或者包的当前目录
    powdesigner建表
    遍历map
  • 原文地址:https://www.cnblogs.com/shensigzs/p/4187912.html
Copyright © 2011-2022 走看看