Delphi для профессионалов



 

Класс TDBDataSet


Класс TDBDataSet является непосредственным предком основных компонентов доступа к данным ттаblе, TQuery и TstoredProc. Новые свойства и методы класса обеспечивают соединение набора данных с базой данных и используют функции BDE (табл. 16.7).

В процессе соединения важнейшую роль играет свойство DatabaseName, которое должно содержать псевдоним или полный путь к файлам БД. Для управления отдельным соединением с базой данных можно применять специальный компонент TDatabase. Указатель на экземпляр такого компонента содержится в свойстве Database.

Многие функции API BDE используют в своей работе дескриптор специальной структуры, описывающей подключенную базу данных. Доступ к этому дескриптору можно получить через свойство DBHandie.

Приложение баз данных одновременно может использовать несколько наборов данных, каждый из которых подключен к собственной базе данных. Совокупность соединений управляется в рамках сеанса работы, который инкапсулируется компонентом TSession. Указатель на экземпляр такого компонента можно использовать в наборе данных при помощи свойства DBSession.

Для работы с удаленными серверами в класс введено свойство Provider, обеспечивающее доступ к интерфейсу iProvider.

Таблица 16.7. Свойства и методы класса TDBDataSet

Объявление

Тип

Описание

Свойства

property AutoRefresh: Boolean;

Pb

При значении True все автоматически создаваемые значения полей (автоинкрементные, значения по умолчанию) обновляются автоматически

property Database: TDatabase;

Pu, Ro

Указатель связанного с набором данных компонента TDatabase

property DatabaseName: string;

Pu, Pb

Псевдоним базы данных

type HDBISES: Longint; property DBHandie: HDBISES;

Pu, Ro

Дескриптор базы данных. Используется при работе с API BDE

type TLocale: Pointer; property DBLocale: TLocale;

Pu, Ro

Идентифицирует языковый драйвер API BDE

property DBSession: TSession

Pu, Ro

Указатель для компонента TSession, с которым работает набор данных

property Provider: IProvider;

Pu, Ro

Идентифицирует интерфейс IProvider

property SessionName: string;

Pu, Ro

 Содержит имя компонента сеанса, в котором работает набор данных

Методы

function CheckOpent Status: DBIResult): Boolean;

Pu

 Возвращает результат вызова BDE.  Используется для тестирования соединения

procedure CloseDatabase ( Database: TDatabase);

Pu

 Закрывает связь с базой данных,  определяемой параметром Database

procedure GetProviderAttributes (List: TList); override;

Pu

Возвращает в списке List параметры языкового драйвера

function OpenDatabase: TDatabase;

Pu

 Открывает связь с базой данных, определяемой свойством DatabaseName