2010-10-07 50 views
0

我想執行以下操作:建議用於高速緩存數據集

1)打開一個數據集(使用TMSQuery緩存內容到磁盤,SDAC DevArt成分)

2)(想像的列表)3)下一次我需要打開數據集,我將首先使用緩存數據填充數據集,然後通過調用TMSQuery.RefreshQuick方法來刷新它。

通過這種方式,我計劃獲得速度的實質性改進,因爲我不需要檢索在以前的應用程序運行中已經檢索到的記錄。

如何獲得此緩存?我有許多與TMSQuery datamodules,所以不知何故,我想有一個全局例程,檢查每次我嘗試打開一個TMSQuery,如果該查詢以某種方式標記,我會嘗試從緩存中恢復,調用RefreshQuick,萬一這種情況失敗我將會打開。

你可以請建議嗎?

(我使用德爾福2009年和SDAC 4.80)

+1

當刷新數據,您必須在數據庫中比較值,所以你仍然需要查詢所有的數據。這是如何提高速度的?你有一個DateModified字段或什麼的? – 2010-10-07 10:18:10

+0

我打算使用TMSQuery.RegreshQuick方法。 – LaBracca 2010-10-07 11:43:31

回答

1

你可以做2件事情:TMSQuery組件的

  1. 製作後裔和重寫打開功能 (你搜索你數據模塊.DFM和.PAS文件與TMSQuery與TCachedTMSQuery替換)
  2. 迂迴/勾TMSQuery.Open(運行時補丁)