看了李维的<Delphi.5.x.分布多层应用系统>中所写的ClientDataSet的无状态,有些问题请教一下?
我用的是delphi7.0及SQL数据库
在ClientDataSet设置FetchOnDemand为False,PacketRecords为5,按照书上的说法,我现在应该是在无状态,即应用程序不再维护我的Cursor,但是我使用GetNextPacket也能得到数据.根据书上的讲,应该在ClientDataSet与DataSetProvider的BeforGetRecord传递当前客户端的最后一个数传值,让应用程序能够定位到客户端当前的Cursor.
现在问题,是我没有在BeforGetRecords中编写代码,直接使用GetNextPacket一样能得到数据!为何?是不是Delphi7已经将这样的问题解决啦!不需要用户编写额外的代码呢?
我用的是delphi7.0及SQL数据库
在ClientDataSet设置FetchOnDemand为False,PacketRecords为5,按照书上的说法,我现在应该是在无状态,即应用程序不再维护我的Cursor,但是我使用GetNextPacket也能得到数据.根据书上的讲,应该在ClientDataSet与DataSetProvider的BeforGetRecord传递当前客户端的最后一个数传值,让应用程序能够定位到客户端当前的Cursor.
现在问题,是我没有在BeforGetRecords中编写代码,直接使用GetNextPacket一样能得到数据!为何?是不是Delphi7已经将这样的问题解决啦!不需要用户编写额外的代码呢?
如果你想得到经常使用的数据,就
作一个buffer,或者dataset,
操作数据又快又好(用批提交)。