0

我们在 MySQL 中有一个带有后端数据库的 Web 应用程序。Master 表有大约 170000 条记录。客户端功能允许他/她上传具有与 Master 中相同列的 Excel 表,其中包含大约更新的 1000 条记录。目标是根据 id 列(两端都存在)更新 Excel 主表,但只更新几列。响应时间是一个关键因素。

所以我们在 ASP.NET 中所做的如下:

  1. 将excel表格上传到服务器
  2. 创建一个数据表并更新其中的 Excel 工作表的所有内容
  3. 现在基于一个列属性查询Excel数据库并一一更新记录

目前这个过程大约需要 19 分钟来更新大约 1300 条记录。那么我们如何才能提高更新速度呢?

我们还观察到像下面这样的 MySql 更新查询也需要很多时间:

update " + Session["Circle"].ToString() + ".retail n," + Session["Circle"].ToString() + ".upload o set n.VillageName=o.VillageName, n.TehsilName=o.TehsilName, n.DistrictName=o.DistrictName, where n.Retailer_MSISDN=o.Retailer_MSISDN; 
4

1 回答 1

0

确保它Retailer_MSISDN是唯一的并被索引。您可以通过以下方式创建索引Retailer_MSISDN

ALTER TABLE my_table  
ADD INDEX Retailer_MSISDN(Retailer_MSISDN);

通过索引列进行查找将减少查找时间。

于 2013-08-08T19:39:45.557 回答