Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is difference between ADOTable and ClientDataSet

Tags:

delphi

ado

What is the difference between ADOTable and ClientDataSet?
Both components are capable of performing Batch Update, why add the extra overhead of having 2 additional components like ClientDataSet and DataSetProvider.

like image 616
VimleshS Avatar asked Dec 27 '22 09:12

VimleshS


2 Answers

The main difference is that ClientDataSet can operate without a connection to external database. You can use it as in-memory table or load it's contents from file. In combination with DataSetProvider it is frequently used to overcome limits of unidirectional datasets and as a cache.

like image 67
Torbins Avatar answered Jan 14 '23 23:01

Torbins


A ClientDataSet is an in-memory dataset, which has a lot of usefull additional functionallities. One big advantage compared to Interbase/Firebird tables and queries is, that you don't need to keep a transaction alive, e.g. as long as you display the data in a grid.

Have a look at this article: A ClientDataSet in Every Database Application

like image 29
markus_ja Avatar answered Jan 14 '23 22:01

markus_ja