SmartFetch mode does not give duration advantages when fetching data sequentially. SmartFetch mode provides advantages when editing tables with a large number of records.
To go to a particular record, it is not necessary to sequentially read all the records before/after it. You can use the TUniTable.MoveBy method. For example, if you want to go to the 500000th record, use the following code:
Code: Select all
UniTable.Active:= True; UniTable.MoveBy(500000);
SmartFetch mode uses a universal mechanism that suits all Uni providers. Therefore, SmartFetch mode does not use the specific features of various DBMSs. Besides, it does not use SQL Server OFFSET-FETCH Clause.
This is a specificity implementation of the SmartFetch mode. It allows to use the SmartFetch mode for all Uni providers.
TUniTable fetches data by blocks. The number of records in the block is taken from the FetchRows property: https://www.devart.com/unidac/docs/deva ... chrows.htm . For example, if you set FetchRows=42, then the data will be fetched by 42 records.