[Lazarus] db grid/dataset components that only load currently visible records?

Michael Van Canneyt michael at freepascal.org
Thu Feb 23 09:43:47 CET 2023

On Thu, 23 Feb 2023, Luca Olivetti via lazarus wrote:

> El 23/2/23 a les 9:04, Luca Olivetti via lazarus ha escrit:
>> Hello,
>> do you know of any component/dataset combo that works like a TDBGrid but 
>> doesn't load all the records from the db when doing a refresh, just the 
>> ones that are currently visible, yet offering seamless scrolling?
>> I looked in the wiki but I couldn't find any.
> Something like this:
> https://docwiki.embarcadero.com/RADStudio/Rio/en/Browsing_Tables_(FireDAC)#Live_Data_Window_Mode

This is not something that the grid handles. This is a dataset feature.

At this moment I know of no FPC/Lazarus dataset component that handles this automatically.

Note the remark on that page:

"Although FireDAC minimizes the number of generated and executed SQL commands in LDW mode,
  it still produces a heavier DB load than TFDQuery. So, application developers should
  carefully choose when to use TFDTable and LDW mode. "

This is exactly why FPC does not have a database table component. 
It's horribly inefficient.


More information about the lazarus mailing list