Основное отличие ClientDataSet от обычного TDataSet в Delphi заключается в способе работы с источником данных. 14
TDataSet — обычный компонент, который инкапсулирует набор данных. 14 Он поддерживает основные операции, унаследованные от класса TDataSet. 14
ClientDataSet предназначен для работы с удалёнными данными, которые доступны только через внешний компонент-провайдер. 14 Это означает, что сохранение изменений и обновление набора данных осуществляется локально, без обращения к источнику данных. 14
Например, выполнение метода Post сохраняет данные не в базе данных на сервере, а в буфере (в оперативной памяти клиентского приложения). 2 Все изменения отсылаются на сервер только при необходимости и легко управляются разработчиком. 14
Таким образом, ClientDataSet подходит для работы с удалёнными данными, а TDataSet — для работы с локальными наборами данных. 12