L lsz100 Unregistered / Unconfirmed GUEST, unregistred user! 2009-09-18 #1 当ClientDataSet的FetchOnDemand为TRUE和PacketRecords=100时,这时如果CLIENTDATASET查询了10W条记录,这时这10W记录是不是缓存在应用服务端
A aabbcc250 Unregistered / Unconfirmed GUEST, unregistred user! 2009-09-18 #3 10W记录已经到了本地内存中。TDataSetProvider只保存有客户端最后一次读取记录的位置。如果再次读取100条,TDataSetProvider就会从该位置的下一条记录开始,从数据库表中读取100条到客户端。
10W记录已经到了本地内存中。TDataSetProvider只保存有客户端最后一次读取记录的位置。如果再次读取100条,TDataSetProvider就会从该位置的下一条记录开始,从数据库表中读取100条到客户端。
Z zhuchengchuan Unregistered / Unconfirmed GUEST, unregistred user! 2009-09-21 #4 应该是在服务器上,你可以搞两台电脑来试一下.
L lsz100 Unregistered / Unconfirmed GUEST, unregistred user! 2009-09-23 #5 应该是在服务器上,哪个服务器,数据库服务器还是应用服务器
V vmao Unregistered / Unconfirmed GUEST, unregistred user! 2009-09-23 #7 我觉得应该要看情况:dbexpress,BDE我认为在数据库服务器上。ADO要看cusortype的设置,客户端游标在应用服务器上,服务端游标在数据库服务器上。Borland产品最大的特点就是非离线的,和微软Ado.net产品不一样的。不断往下拉Grid会不断从数据库fetch数据的。其次,PacketRecords=100只代表Client从APPSServer抛回的数据时100一次,并不代表APPServer从数据库中Fetch的数量,这个参数指挥不了AppServer到数据库提取的数量。Appserver和数据库之间交换数据包的大小我也不知道由什么决定的,但可以肯定不是一竿子买卖全拉数据的。否则再好的中间服务器也早崩了。
我觉得应该要看情况:dbexpress,BDE我认为在数据库服务器上。ADO要看cusortype的设置,客户端游标在应用服务器上,服务端游标在数据库服务器上。Borland产品最大的特点就是非离线的,和微软Ado.net产品不一样的。不断往下拉Grid会不断从数据库fetch数据的。其次,PacketRecords=100只代表Client从APPSServer抛回的数据时100一次,并不代表APPServer从数据库中Fetch的数量,这个参数指挥不了AppServer到数据库提取的数量。Appserver和数据库之间交换数据包的大小我也不知道由什么决定的,但可以肯定不是一竿子买卖全拉数据的。否则再好的中间服务器也早崩了。