数据库程序如何加速(100分)

  • 主题发起人 主题发起人 herald
  • 开始时间 开始时间
傻蛋Energy:
不对,不对!
要看具体是什么数据库。用什么连接方式。
比如用大型数据库还是一般地dbase,是用odbc还是ole db,是用键集方式操纵
还是dbe的cache方式,数据库是不是支持游标,如此等等!
一般而言,20000条实在是小数据库。不过还是要看你如何提取法。
据我所知,dbe取数据一般采用的是cache的方式,特别对于odbc而言用table
和select * from 没什么区别。
所以实在不能一而盖之,只有说明白什么数据库,结构,操作,期待的连接方式
才能帮你优化。
 
说明 傻蛋=Energy
所以分不要给傻蛋,因为没有Energy,傻蛋对分数也不感兴趣,傻蛋对数据库很感
兴趣。
 
需要看你用的是什麼數據庫了.
 
我以前也遇到过这个问题,我用的是notes,记录一多,就会变的非常慢.
 
to pxlei,
怎么《Delphi4核心编程技术》上都是先unprepare?
 
还是你的定义有问题
20000条记录
本地TABLE
C/S QUERY
是不是你进行了一些扫描之类的工作
我用ACCESS的10000条的索引记录也可以不用进度条
20000那么慢 太夸张了
 
如果你用的是paradox数据库,达到2万条记录后采取什么措施都没用
 
我的记录有60万条,本地查询一分钟,paradox表
 
本地表最好有Paradox
记录太多最好用多几重索引。
 
不管是什么数据库,对于复制性的操作,SQL语句一般比较快,例如:
Insert Into Table1 (A,b,...)
Select a,b,... From Table2
这种方式复制是最快的,不信,你试一试,不过,在本地数据库,Table1与Table2
不能是同一个表。
 
同意傻蛋看法。
用ODBC连接效率最低,万不得已不要使用。
权威著作上讲的
 
还有一点,记录的大小是否也要考虑,表的冗余是否太大?
 
做一个漂亮的进度条,让用户等吧
 
对于Access 数据库, 不使用ODBC和ADO,用什么方法可以操作它?
 
谢谢大家捧场
 
要看具体是什么数据库。用什么连接方式。
我的经验:
1、本地数据库用filter比SQL快很多,但大型数据库,
应该使用SQL更快,尽量避免使用TTable。
2、数据库结构的合理设计很重要,包括索引。
3、BDE/ADO的配置尽可能优化(参见李维书)
4、使用SQL时,数据的提交也有些技巧,(参见李维书)。
 
接受答案了.
 
后退
顶部