Доступ к базе данных
Доступ к базе данных обеспечивают компоненты Database, Table, Query и DataSource. Значки этих
компонентов находятся на вкладках Data Access и BDE (рис. 5.8).

Рис. 5.8. Компоненты вкладок Data Access
и BDE обеспечивают доступ к данным
Компонент Database представляет базу
данных как единое целое, т. е. как совокупность таблиц, а компонент Table — как одну из таблиц базы данных. Компонент DataSource (источник данных) обеспечивает связь между
компонентом отображения-редактирования данных (например, компонент DBGrid) и источником данных, в качестве которого может
выступать таблица (компонент Table) или результат
выполнения SQL-запроса к таблице (компонент Query).
Компонент DataSource позволяет оперативно выбирать
источники данных, использовать один и тот же компонент (например, DBGrid) для отображения всей таблицы (базы данных) или
только результата выполнения SQL-запроса к этой таблице. Компоненты доступа к
данным обращаются к базе данных не напрямую, а через процессор баз данных —
Borland Database Engine (BDE).
Ядро BDE
образуют динамические библиотеки, реализующие механизмы обмена данными и
управления запросами. В состав BDE включены драйверы,
обеспечивающие работу с файлами данных форматов Paradox, dBase, FoxPro. Имеется также механизм подключения драйверов ODBC. Доступ к данным SQL серверов
обеспечивает отдельная система драйверов — SQL Links. С их помощью можно получить доступ к базам данных
Oracle, Infomix, Sysbase и Interbase.
Механизм взаимодействия компонента отображения-редактирования данных
(DBGrid) с даннымиTable или Query) Через компонент DataSource
показан на рис. 5.9. (

Рис. 5.9. Взаимодействие компонентов доступа-отображения данных и BDE
В форму разрабатываемого приложения надо добавить компоненты
Table и DataSource.
Свойства компонентов Table и DataSource приведены в табл. 5.2 и 5.3. Свойства перечислены
в том порядке, в котором рекомендуется устанавливать их значения.
Значения свойств DatabaseName и TableName задаются путем выбора из списков. В списке DatabaseName перечислены все зарегистрированные на данном
компьютере псевдонимы, а в списке TableName — имена
файлов таблиц, которые находятся в соответствующем псевдониму каталоге.
Таблица 5.2. Свойства компонента Table
Свойство
| Определяет
| DatabaseName
| Имя базы данных, частью которой является таблица (файл данных), для
доступа к которой используется компонент. В качестве значения свойства следует
использовать псевдоним базы данных
| TableName
| Имя файла данных (таблицы данных), для доступа к которому используется
компонент
| TableType
| Тип таблицы. Таблица может быть набором данных в формате Paradox (ttParadox), dBase (ttDBase),
FoxPro (ttFoxPro) или другого типа. По умолчанию
значение свойства равно ttDefault — это означает, что
тип таблицы будет определен на основе информации, которая находится в файле
таблицы
| Active
| Признак активизации файла данных (таблицы). В результате присваивания
свойству значения true файл таблицы будет
открыт
|
Таблица 5.3. Свойства компонента
Data source
Свойство
| Определяет
| Name
| Имя компонента. Используется для доступа к свойствам
компонента
| DataSet
| Компонент, представляющий входные данные (таблица или
запрос)
|
Свойство DataSet компонента DataSource обеспечивает возможность выбора источника данных,
а также связь между компонентом, представляющим данные (таблица или запрос), и
компонентом отображения данных. Например, большая база данных может быть
организована как набор таблиц одинаковой структуры. В этом случае в приложении
работы с базой данных каждой таблице будет соответствовать свой компонент Table, а выбор конкретной таблицы можно осуществить
установкой значения свойства DataSet.
Компоненты доступа к базе данных являются невизуальными и во время
работы программы на форме не видны. Поэтому их можно поместить в любую точку
формы (рис. 5.10).
Значения свойств компонентов Table1 и DataSourcel приложения
"Ежедневник" приведены в табл. 5.4 и 5.5.
Таблица
5.4. Значения свойств компонента Table1
Свойство
| Значение
| Name
| Table1
| DatabaseName
| organizer
| TableName
| org.db
| Active
| false
|
Таблица 5.5. Значения свойств
компонента DataSource1
Свойство
| Значение
| Name
| DataSourcel
| DataSet
| Tablel
|
Рис. 5.10. Форма после добавления
компонентов Table и DataSource
|