CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
(图)邪恶的韩国UMPC 使用 Java 编写数据库应用新规范
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C++ Builder >  数据库及相关技术

大数据导出问题

楼主dfwjt()2006-12-01 11:49:52 在 C++ Builder / 数据库及相关技术 提问

在CB中,要从Server   2000中导出数据,但数据量过大时(如一次导出10w条),速度会比较慢,而且cpu使用率一直会维持在100%  
  想请教各位高手,有什么方法能提高到处速度,并在导出数据时降低cpu的使用率,如维持在50~60%左右??  
   
  谢谢!! 问题点数:20、回复次数:4Top

1 楼lurel(城市陌生人)回复于 2006-12-01 12:50:43 得分 10

如果是这么大的数据,建议不要利用BCB的数据编程实现了,效率低,速度慢。利用SQL   Server的dts工具来做吧。  
  如果非要用自己编程的话,利用线程来操作吧,不过还是不建议。Top

2 楼dfwjt()回复于 2006-12-02 09:52:03 得分 0

利用线程的话   同样存在cpu使用率过高的问题?不知道该如何解决?Top

3 楼fjye(老姜)回复于 2006-12-02 10:56:07 得分 10

用sqlserver的dcp命令。在cb里面创建一个bcp命令(执行到处数据到文件的操作)的bat文件,然后再CB中执行之,执行完以后cb中加载文件,这样要快的多得多,我的经验至少快50倍以上  
   
  给你一个bcp的例子  
  EXEC   master..xp_cmdshell   'bcp   "tempdb..SMP_TempUpTable"   in   d:\upinfo\mdn.txt   -c   -t\t   -Usa   -P   -S127.0.0.1'  
  Top

4 楼dfwjt()回复于 2006-12-08 17:38:27 得分 0

问题基本解决,用的方法是:  
  先利用存储过程TStroedProc,从数据库里查询到相应的数据;然后将数据付给字符串,利用剪切板拷贝到Excel中。  
  但数据量过大时,导数据的速度会特别慢;cpu占用率100%  
   
  后来用memcpy将从数据库里数据拷贝到字符串指针,然后用剪切板拷贝到Excel中,速度还算可以。  
   
  不知还有什么其他方法?Top

相关问题

关键词

得分解答快速导航

  • 帖主:dfwjt
  • lurel
  • fjye

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
惹火投票。。火热进行中...
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo