CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  数据库(包含打印,安装,报表)

上次未解决问题(关于打开数据库的速度问题)!!!

楼主dengyiwolf(七星偃月刀)2003-11-01 10:44:21 在 VB / 数据库(包含打印,安装,报表) 提问

...        
  strtnmtr   =   "select   *   from   tnmtr   where   right(userid,6)='"   &   Right(rsTNCAL.Fields!userid,   6)   &   "'"  
   
                                          Set   rsTNMTR   =   New   ADODB.Recordset  
                                       
                                            rsTNMTR.CursorLocation   =   adUseClient  
                                            rsTNMTR.CursorType   =   adOpenStatic  
                                            rsTNMTR.LockType   =   adLockOptimistic  
                                            rsTNMTR.Open   strtnmtr,   MDBConn  
  ...  
  当运行到这个时候(rsTNMTR.Open   strtnmtr,   MDBConn)   就会停留几秒   数据也只有20几万条   数据库为ACCESS  
  我也是需要里面的全部数据   并且还要做循环(根据条件每一条数据就需要打开一次数据库)   这样下来就特别慢  
  请问各位老鸟,我怎样才能将速度提起来呢(不修改数据库结构的情况下)?  
  问题点数:20、回复次数:8Top

1 楼yoki(小马哥--鬓微霜,又何妨)回复于 2003-11-01 11:01:03 得分 5

20几万条纪录用几秒正常呀Top

2 楼hlm750908(pro dog)回复于 2003-11-01 11:20:03 得分 2

正常  
  Top

3 楼zjcxc(邹建)回复于 2003-11-01 11:52:10 得分 5

正常现象.打开那么大的表是要那么长时间.你可以通过:  
  将数据改为SQL  
  升级你的电脑  
   
  来改善.Top

4 楼dengyiwolf(七星偃月刀)回复于 2003-11-01 12:24:30 得分 0

但是做了循环后   速度就慢多了,  
      for   ..  
          ...  
            (这中间也必须打开几张表)  
          for   ..  
                ....  
              (这中间也必须要打开好几张表.因为对方的数据放的特别乱)  
          next  
      next  
  这样下来将几千条数据   ACCESS转换成DBF   就需要将近15分钟    
  Top

5 楼dengyiwolf(七星偃月刀)回复于 2003-11-01 12:26:23 得分 0

请问像这样的转换时间谁能接受   包括我自己都不能接受   更不用说客户了...  
  请各位老鸟帮帮忙   分可以商量...Top

6 楼dengyiwolf(七星偃月刀)回复于 2003-11-01 14:48:57 得分 0

请问   小马哥(yoki)  
        作循环时(2000次)每次都要停留几秒...   这样下来将近要停留十五分钟这样的速度太慢了             求救....!!!!!Top

7 楼lizfhn(lzf)回复于 2003-11-01 17:02:45 得分 3

你用SQL可能会好点吧!Top

8 楼jjkk168(老加班的人--好好学习,天天吃饭)回复于 2003-11-01 17:29:52 得分 5

执行SQL时千万别在循环里面实现,那样速度慢真的是自找的。  
   
  你将所需要的内容在一个SQL语句里面实现,然后再去用代码进行取值。  
   
   
  如果实在不行,你先将记录读出来写入一个数组,再判断数组这样也快一点啊Top

相关问题

  • 关于数据库中表的打开速度问题
  • sql server 数据库打开速度缓慢
  • 为什么会这样:不能打开数据库 '(未知的)'
  • 有关打开数据库
  • 数据库打开文件
  • 打开数据库问题
  • 数据库速度问题
  • 一个网站用Access数据库,改成Sql Server数据库后打开速度奇慢无比,问题有可能出在哪儿了
  • 打开数据库后如何删除数据库
  • 急!我用ADO打开一个access2000的数据库,总说未知数据库格式.要是打开用access97做的数据库就没事.是不是我的VB版本过时了?应该怎末办?

关键词

  • 数据库
  • 数据
  • 循环
  • sql
  • rstnmtr
  • strtnmtr
  • 打开
  • 速度
  • 请问
  • 停留

得分解答快速导航

  • 帖主:dengyiwolf
  • yoki
  • hlm750908
  • zjcxc
  • lizfhn
  • jjkk168

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

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