ADO访问数据库的大表时,非常慢。但是用查询分析器执行相同的命令,却很快。

heyongzhou 2005-01-14 01:20:39
有个表,开始几万条记录时,用VC+ADO访问读取,非常快。但是现在有10多万,而且要到50万。
还用VC+ADO访问读取就非常慢了。
而此时,用查询分析器执行相同的命令,仍旧非常快。

不知道为何啊?

然后我将这个表A的数据导出到另一个相同结构的表B,再清空此表A,再将B的数据导回到A。
此时VC+ADO访问读取的速度又很原来一样加快了。

有没有高人碰到此事?
恳求回答!
...全文
204 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
heyongzhou 2005-01-15
  • 打赏
  • 举报
回复
多谢大家,打玩sp3,好像好使了.
当然,还有继续测试.
alipaymate 2005-01-14
  • 打赏
  • 举报
回复
在用户界面上添加一项, 让用户感到慢时, 手动维护数据库. (当然了,在程序里你要用sql来实现维护)
icedut 2005-01-14
  • 打赏
  • 举报
回复
sql的数据库是要定期维护的
heyongzhou 2005-01-14
  • 打赏
  • 举报
回复
索引重建解决了问题。
但是随着时间推移,问题估计又回出现。
heyongzhou 2005-01-14
  • 打赏
  • 举报
回复
回 daijingjie2002(艰苦创业) 没有别的在用那个表。
heyongzhou 2005-01-14
  • 打赏
  • 举报
回复
回: DreamManor(梦想庄园主) 索引重建估计是个好办法,一会我试试。但是没有办法指望客户那里有人会这个,就算是会,我也不能让他们动,让他们整出了问题,倒霉的还是我们。

回: tengjian1981(Fly) 正是用存储过程来selece的。

回: zjcxc(邹建),1 我的确没有弄补丁。
2 我就是在客户端的查询分析器执行的,速度飞快。
3 我的应用是个vc的服务,启动时load这些大量数据。几万条时很快,数据多了,居然每个select要4秒。

多谢各位,我按你们说的去做。
zjcxc 2005-01-14
  • 打赏
  • 举报
回复
1.可能是你的sql没有装补丁导致

2.可能是网络的影响,你试试在客户端的查询分析器中执行同样的处理

3.也可能是你程序中调用的问题,如果只查询,不显示结果,是否也很慢?
tengjian1981 2005-01-14
  • 打赏
  • 举报
回复
把查询语句写成存储过程来调用
daijingjie2002 2005-01-14
  • 打赏
  • 举报
回复
是否有其他用户在用
DreamManor 2005-01-14
  • 打赏
  • 举报
回复
将数据库索引重建一下,将数据库整理一下。

另外,无论你怎样处理,都不可能有查询分析器快。

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧