Базы данных и знаний. Проектирование баз данных по технологии "клиент-сервер" и разработка клиентских приложений. Токмаков Г.П. - 77 стр.

UptoLike

Составители: 

-77-
Компонент TDatabases появляется при активизации соединения. Допустим,
что после запуска программы при нажатии одной из кнопок формы вызывается
метод Query.Open. После этого производится проверка, имеется ли БД с име-
нем, указанным в свойстве DatabaseName компонента Queryl, если ее нет, то
создается новый объект т Database и ссылка на него добавляется в список
Databases, в противном случае берется существующий объект TDatabase.
У компонента TDatabase имеется свойство LoginPromt типа boolean, по-
казывающее, надо ли выводить стандартный входной диалог:
Если это значение равно true, то после вызова метода Open на экране по-
явлется стандартный входной диалог.
Если значение LoginPromt=false, то пользователь должен сам передать в
объект TDatabase login и пароль, поместив их в список Params.
По умолчанию объект TDatabase создается только в процессе соединения,
поэтому нам необходимо заранее создать свой собственный компонент
TDatabase И связать его С TQuery.
Итак, работающая с БД Delphi-программа предс тавляет собой довольно
длинную цепочку взаимоувязанных компонент, в основании которой находится
список SessionList. Этот список, как мы уже отметили, всегда содержит хотя
бы одну сессию. На другом конце цепочки находится какой-нибудь визуальный
компонент.
Можно поместить все невизуальные компоненты для работы с БД непо-
средственно на форму. В этом случае взаимосвязь компонентов приложения
и
таблиц БД и используемые при этом свойства компонентов будут иметь вид,
как это показано на рис. 53.
Рис. 53. Взаимосвязь ком по ненто в и БД при размещении всех компонентов на форме
Но для невизуальных компонентов в Delphi предусмотрен особый тип
формы, называемый модулем данных (Data Module). Этот модуль предназна-
чен для размещения только невизуальных компонентов, таких как DataSourse
и TQuery. Таким образом, компоненты, предназначенные для доступа к дан-
ным, размещаются в отдельном контейнере - модуле данных. Существует тр и
типа модуля данных: