COM+组件如何处理大批量数据(100分)

  • 主题发起人 主题发起人 paul_friend
  • 开始时间 开始时间
P

paul_friend

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高手:
小弟做的COM+组件中遇到大批量数据查询,不用remote data控件,如查询客户信息
表,该表有几百万条记录,每次取50条记录到前端,后台用ORACLE数据库,ado方式,有
没有好的方案既解决速度有不至于是as负载压力过大?恳切前辈高手帮忙!
 
参考TClientDataSet和TDataSetProvider的Source
 
李维关于ADO的书上说,有两种方法,一是在中间层保持状态,客户端设置ClientDataSet的
FetchOnDemand为真,PacketRecords为一次取得的记录数,用GetNextPacket方法取得数据
包,另一种是无状态的,在中间层用SQL语句取得得某一段的多笔数据,但是数据表要有主
键,并且要用类似in子句的SQL,记录太多影响速度,你的情况个人认为用第一种方法好点,
原因很简单,数据太多,IN子句太耗时,但中间层要保持状态,违背了三层的思想...
 
1、分段数据存取
2、在服务器上执行所需要的业务罗辑,例如用存储过程等
 

Similar threads

回复
0
查看
1K
不得闲
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
916
SUNSTONE的Delphi笔记
S
后退
顶部