Клиентские наборы данных
В Палитре компонентов Delphi представлено несколько компонентов, инкапсулирующих клиентский набор данных. В то же время при разработке настоящих удаленных клиентских приложений применяется компонент
TClientDataSet. Внесем ясность в этот вопрос. Итак, помимо компонента
TClientDataSet, расположенного на странице Data Access, существуют еще два компонента:
- TSimpleDataSet
— разработан для технологии доступа к данным dbExpress и, по существу, является
единственным полноценным средством для работы с набором данных в рамках этой
технологии;
- TiBdientDataSet — используется
в технологии доступа к данным сервера InterBase
— InterBase Express.
Все перечисленные компоненты произошли от общего предка — класса
TCustomClientoataSet (рис. 22.2). Они обеспечивают локальное кэширование данных и взаимодействие с серверным набором данных при посредстве интерфейса
IProviderSupport.
Основное различие между компонентом TClientDataSet и другими клиентскими компонентами заключается в том, что первый предназначен для использования с внешним
компонентом-провайдером данных. А значит, он может взаимодействовать с удаленным провайдером данных.
Остальные перечисленные компоненты инкапсулируют внутренний
провайдер данных, предоставляя тем самым для использования в рамках соответствующих технологий доступа к данным эффективный механизм локального кэширования данных. Использование внутреннего провайдера данных обеспечивает общий
класс- предок TCustomCachedDataSet.
Рис. 22.2. Иерархия классов
клиентских наборов данных
Для этого он имеет защищенное свойство
property Provider:
TDataSetProvider;
Соединение с источником данных осуществляется
не свойством RemoteServer (будет рассмотрено
ниже применительно к компоненту TclientDataSet).
задающим удаленный сервер, а стандартными средствами соответствующей технологии
доступа к данным.
Таким образом, для работы с удаленными данными
(т. е. внешними по отношению к клиенту) пригоден только компонент TclientDataSet,
умеющий работать с внешним провайдером данных.
|