Foxtable(狐表)用户栏目专家坐堂 → 高速导出太慢···


  共有10411人关注过本帖树形打印复制链接

主题:高速导出太慢···

帅哥哟,离线,有人找我吗?
reachtone
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2012/8/31 13:05:00 [显示全部帖子]

这个问题之前我也反映过的,SaveExcel导出如蜗牛,高速导出也快不到哪里去。

 

刚才我测试了一下51000条的数据导出,56列,用高速导出耗时3分多钟,用sql语句直接导出不到20秒。

 

可以用以下方法测试:

 

Access数据源(可以直接导出):
SELECT * INTO 导入表名 IN "D:\ABC.XLS" "Excel 8.0;" FROM 导出表名

 

Sqlserver数据源(可以先用狐表导出一个空的结构,然后再用下面的语句导出数据):
INSERT INTO OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 8.0;HDR=YES;IMEX=2;DATABASE=D:\ABC.XLS',[导入表名$]) SELECT * FROM 导出表名


 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2012/8/31 13:09:00 [显示全部帖子]

高速导出还有个很不人性化的地方:导出的列标题不是用的Caption,而是用的列名。
[此贴子已经被作者于2012-8-31 13:09:42编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2012/8/31 13:12:00 [显示全部帖子]

以下是引用mr725在2012-8-31 13:10:00的发言:
又试了,用系统的高速导出Access还是要近三分钟。试过NN遍了,都是这个结果啊。
 
你不会是银河超级计算机吧。。。

我测试的结果也是一样的慢,你可以用3楼的sql语句试试,瞬间就可以导出完成。


 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2012/9/1 11:10:00 [显示全部帖子]

是的,三楼的代码是针对2003的,如果用的是2007,sql语句中的OLEDB和Excel的版本号应改成12.0。

 回到顶部
帅哥哟,离线,有人找我吗?
reachtone
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:版主 帖子:1993 积分:19409 威望:0 精华:20 注册:2008/9/2 10:09:00
  发帖心情 Post By:2012/9/1 15:55:00 [显示全部帖子]

我用2003测试正常,而且,我给客户的项目里就是用这种方法实现快速导出的,一直在使用,没反映什么问题。

 回到顶部