请问各位在delphi6分布式中服务器端的DatasetProvider在这种情况下(客户端ClientDataset的FatchOnComman=False;

  • 主题发起人 主题发起人 gywlily
  • 开始时间 开始时间
G

gywlily

Unregistered / Unconfirmed
GUEST, unregistred user!
请问各位在delphi6分布式中服务器端的DatasetProvider在这种情况下(客户端ClientDataset的FatchOnComman=False;PacketRecords=10;)是“状态对象”还是“无状态对象”? (20分)<br />为何我用delphi6在这种情况下(客户端ClientDataset的FatchOnCommand=False;
PacketRecords=10;)测试时是“状态对象”,而李维在delphi5的书上说是“无状态对象”,难道是delphi5和6不一样?
小妹太穷,分少,请别见怪
请各位大哥指教?感谢感谢!!
 
一样的,再仔细看看李维的书吧!
 
请各位大哥帮帮忙把[^]
 
你如何测试说它是“状态对象”呢?
 
李维的书也说的是“状态对象呀“
要维护一个游标嘛!
 
无状态对象和状态对象的区分是这样:
比如你取得10条,如果你下次取下面10条,
如果是状态对象你必须在服务器上维护你的信息和游标
无状态对象就不需要在服务器上维护信息,然后通过参数传递,
服务器每次都是认为和前面处理没有关系。
----个人理解
 
不好意思各位,我的问题中的“状态对象”应该改为“无状态对象”
李维的书上说:只要是把客户端ClientDataset的FatchOnCommand设为False,那么就是“无状态对象”。
我的客户端有两个ClientDataset,FatchOnCommand都是false(“无状态对象”)
,ClientDataset1的PacketRecords=2,ClientDataset2的PacketRecords=4,都连接同一个数据表。我先打开ClientDataset1,可以显示第1,2比数据,再打开ClientDataset2,但是显示的是3-6笔数据。若这时再从ClientDataset1取数据,显示第7,8笔数据。这明显说明服务端的DatasetProvider还是一个“状态对象”,因为它维护了上一次提取数据的游标信息。
请问这是为什么?
 
不好意思各位,我的问题中的“状态对象”应该改为“无状态对象”
李维的书上说:只要是把客户端ClientDataset的FatchOnCommand设为False,那么就是“无状态对象”。
我的客户端有两个ClientDataset,FatchOnCommand都是false(“无状态对象”)
,ClientDataset1的PacketRecords=2,ClientDataset2的PacketRecords=4,都连接同一个数据表。我先打开ClientDataset1,可以显示第1,2比数据,再打开ClientDataset2,但是显示的是3-6笔数据。若这时再从ClientDataset1取数据,显示第7,8笔数据。这明显说明服务端的DatasetProvider还是一个“状态对象”,因为它维护了上一次提取数据的游标信息。
请问这是为什么?
 
后退
顶部