数据量过大怎么办,

zhangzhihui528 2005-09-27 12:17:11
我用的bde来连接的数据库 ,但是当数据量达到10万多条时,局域网内访问就很慢了,请问时不时设置的问题,因为直接用程序显示和调用server查询分析器的显示时间差的太多,请问时不时什么设置的问题,急。
...全文
183 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhangzhihui528 2005-09-27
  • 打赏
  • 举报
回复
但是我想同样的sql语句在查询分析器上怎么很块呢
abc3000 2005-09-27
  • 打赏
  • 举报
回复
mark

bluesky23 2005-09-27
  • 打赏
  • 举报
回复
毕竟局域网里调用,而不是在本机,速度肯定不是一个级别的,这跟设置没有什么关系,建议楼主在优化查询这上面花点功夫。
hellolongbin 2005-09-27
  • 打赏
  • 举报
回复
寒楼主的信誉值……
truedogface 2005-09-27
  • 打赏
  • 举报
回复
慢的原因是因为“结果集被整个传到客户端”造成的,我想。
如果你使用ADO连接的话,有个CursorLocal的属性,如果选择UseClient的话,就会发生你的这个问题。
但我帮你看了TQuery,和TDatabase,没有相应的属性。会不会这样可以解决:
首先,RequestLive不要选择True,这样结果集将只读。(这样做会不会就相当于游标属性UseServer)
然后,使用缓存更新控件TUpdateSQL,来做修改
很多年没有用BDE了,不知道行不行。你可以试试。
还有,你的程序中不能有类似i:=Query1.RecordCount;的语句,也会引起向客户端传送全部数据。

不过我想你还是最好不要用BDE了,至少也要用ADO。BDE你以后做安装也挺麻烦的。而且有问题,也没有人能帮你。。呵呵。
lxwlhc 2005-09-27
  • 打赏
  • 举报
回复
用ADO连接数据库,再用存储过程
czw980641 2005-09-27
  • 打赏
  • 举报
回复
你是用哪个控件连接的,query还是adoquery???
相对来说,用adoquery连接要快很多。。。
yaccor 2005-09-27
  • 打赏
  • 举报
回复
10万条数据不是很多,SQL数据库应该会很快的,楼住注意优化
zhangzhihui528 2005-09-27
  • 打赏
  • 举报
回复
sql数据库
smiler007 2005-09-27
  • 打赏
  • 举报
回复
什么数据库啊?还用BDE?
如果是微软的数据库,还是用ADO好些....10万记录,不算太大的...

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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