|
Клиентские наборы данных
В Палитре компонентов 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,
умеющий работать с внешним провайдером данных.
|