Использование cacheSize
Используйте свойство CacheSize, чтобы управлять количеством записей, которые нужно получить в один раз в локальную память от поставщика. Например, если CacheSize равно 10, после первого открытия объекта Recordset поставщик получает первые 10 записей в локальную память. При переходе по объекту Recordset поставщик возвращает данные из локального буфера памяти. Как только вы пройдете последнюю запись в кэше, поставщик извлекает следующие 10 записей из источника данных в кэш.
Заметка
CacheSize основан на свойстве Maximum Open Rows, характерном для поставщика, (в коллекции свойств объекта Recordset). Нельзя задать CacheSize значением, превышающим максимальное количество открытых строк. Чтобы изменить количество строк, которые можно открыть поставщиком, задайте максимальное количество открытых строк.
Значение CacheSize можно настроить во время существования объекта Recordset, но изменение этого значения влияет только на количество записей в кэше после последующего извлечения из источника данных. Изменение только значения свойства само по себе не изменит текущее содержимое кэша.
Если для запроса записей их меньше, чем CacheSize, поставщик возвращает оставшиеся записи, и ошибка не происходит.
Настройка CacheSize с значением ноль недопустима и возвращает ошибку.
Записи, полученные из кэша, не отражают одновременные изменения, внесенные другими пользователями в исходные данные. Чтобы принудительно обновить все кэшированные данные, используйте метод Resync.
Если CacheSize назначено значение больше чем 1, методы навигации (Move, MoveFirst, MoveLast, MoveNext и MovePrevious) могут привести к переходу на удаленную запись, если удаление происходит после извлечения записей. После первоначального получения последующие удаления не будут отражены в кэше данных, пока вы не попытаетесь получить доступ к значению данных из удаленной строки. Однако установка значения CacheSize на 1 устраняет эту проблему, так как удаленные строки невозможно получить.