大家好,不知有没有人遇到过从Excel文件到系统的导入过程中,涉及批量数据处理或者数据量过大时造成前台页面假死或卡死,也许这篇帖子会是你的福音。
经过本人团队与活字格工程师胡耀、瑞瑞反复沟通,解决了当下我遇到的最大的难题。
需求背景:物流公司的订单管理系统 使用外联数据库 SQL SERVER 2008 R2 SP3
需求内容:单个Excel处理量20000行,共计46列字段 ,根据数据库其他表的内容需要UPDATE对应字段做一些校验匹配
当前问题:前段导入Excel数据量大,在提交表格的过程中,大约需要1分钟前后(根据客户机的上行带宽不同时间略有不同),前台做了校验匹配,更是雪上加霜。
解决方案:
需要的工具或技能:
1:AccessDatabaseEngine.exe SQL SERVER数据库链接Excel的一款官方接口文件(区分64位和32位 )
安装完毕后 打开SQL SERVER 数据库 会出现一个新的访问接口 Microsoft.ACE.OLEDB.12.0 如果是 出现Microsoft.ACE.OLEDB.4.0 证明你下载的版本不对噢!
2:活字格前段页面调用存储过程
新的解决方案会使用附件上传功能,配合一些前台代码的方式,截取文件名,通过参数形式调用后台存储过程进行数据查询和INSERT 插入工作 ,所以如果要使用该解决方案,需要会使用活字格调用存储过程
具体案例参照:https://gcdn.grapecity.com.cn/fo ... 6%B4%A2%B9%FD%B3%CC
或者直接在论坛中搜索“存储过程”
3:上传文件并通过上传过程截取对应的文件名称显示到页面上
具体操作参照:
导入上传Excel附件.fgcc
(520.65 KB, 下载次数: 1321)
|