我想执行以下操作:
1)打开数据集(使用TMSQuery,SDAC DevArt组件)
2)将内容缓存到磁盘(想象一下cutomers列表)
3)下次我需要打开数据集时,我将首先使用缓存数据填充它,然后我将通过调用TMSQuery.RefreshQuick方法刷新它。
通过这种方式,我计划获得速度的实质性改进,因为我不需要检索我在之前的应用程序运行中检索过的记录。
如何获得此缓存?我有许多带有TMSQuery的数据模块,所以不知何故我想有一个全局例程来检查每次我尝试打开一个TMSQuery,如果该查询以某种方式被标记我将尝试从缓存中恢复,调用RefreshQuick,以防这个失败我将致电Open。
你能建议吗?
(我使用Delphi 2009和SDAC 4.80)
答案 0 :(得分:3)
您可以使用TClientDataSet
和TDataSetProvider
组件,以这种方式连接组件。
TMSQuery-> TDataSetProvider->的TClientdataSet
TClientDataSet
是保留和检索磁盘数据的一个很好的替代方法。
有关ClientDataset
的更多信息,请参阅这些链接答案 1 :(得分:1)
你可以做两件事: