Я хотел бы выполнить следующее:Предложения для кэширования набора данных
1) Откройте набор данных (с использованием TMSQuery, SDAC DevArt компонента)
2) кэширование контента на диск (представьте список cutsomers)
3) в следующий раз, когда мне нужно открыть набор данных, я сначала заполню его кэшированными данными, а затем просто обновить его, вызвав метод TMSQuery.RefreshQuick.
Таким образом, я планирую добиться существенного улучшения скорости, потому что мне не нужно извлекать записи, которые я уже получил в предыдущих запусках приложений.
Как я могу получить это кеширование? У меня много datamodules с TMSQuery, поэтому каким-то образом я хотел бы иметь глобальную подпрограмму, которая проверяет, что каждый раз, когда я пытаюсь открыть TMSQuery, если этот запрос каким-то образом помечен, я попытаюсь восстановить из кеша, вызовите RefreshQuick, если это не получается вызовет Open.
Не могли бы вы предложить?
(я использую Delphi 2009 и SDAC 4,80)
При обновлении данных, вы должны сравнить его значения в базе данных, поэтому вам все равно придется запрашивать все данные. Как это улучшает скорость? У вас есть поле DateModified или что-то еще? –
Я планирую использовать метод TMSQuery.RegreshQuick. – LaBracca