Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
23
Добавлен:
01.05.2014
Размер:
526.34 Кб
Скачать

: Проектирование приложений БД

Классы библиотеки VCL Delphi

Классы компонентов управления данными

TDBRadioGroup - класс, реализующий группу радиокнопок, которые связаны с полем базы данных. Применение такого объекта предоставляет пользователю удобную возможность устанавливать значение поля базы данных, выбирая его из предлагаемых опций.

TDBCheckBox - класс, реализующий компонент "флажок", который связан с полем базы данных.

TDBListBox - класс, реализующий компонент "список", который используется для отображения значений поля набора данных. Значения, отображаемые в списке, содержатся в свойстве Items.

TDBComboBox - класс, реализующий компонент "раскрывающийся список", который используется для отображения значений поля набора данных. Значения, отображаемые в списке, содержатся в свойстве Items.

TDBLookupListBox - класс, позволяющий выполнять просмотр списка, заполненного значениями полей из другого набора данных.

TDBCtrlGrid - класс, реализующий особый вид таблицы, в которой каждая запись отображается на отдельной панели (количество панелей в компоненте указывается значением свойства RowCount).

: Проектирование приложений БД

Классы библиотеки VCL Delphi

События, инициируемые для наборов данных

При работе с наборами данных могут инициироваться следующие события:

AfterCancel и BeforeCancel - происходит после/до отмены в приложении всех изменений, сделанных для текущей записи.

AfterClose и BeforeClose - происходит после/до закрытия набора данных и перевода базы данных в состояние dsInactive.

AfterDelete и BeforeDelete - инициируется после/до удаления приложением текущей записи, перевода набора данных в состояние dsBrowse и перемещения позиции курсора на предыдущую запись.

AfterEdit и BeforeEdi - происходит после/до начала редактирования приложением текущей записи.

AfterInsert и BeforeInsert - происходит после/до того как приложение вставит новую запись. AfterOpen и BeforeOpen - происходит после/до того как приложение откроет набор данных,

но до того, как какие-либо доступные данные будут отображены.

AfterPost и BeforePost - происходит до завершения переноса значений активной записи в базу данных или внутренний кэш.

AfterRefresh и BeforeRefresh - происходит после/до обновления набора данных.

: Проектирование приложений БД

Классы библиотеки VCL Delphi

События, инициируемые для наборов данных

AfterScroll и BeforeScroll - происходит после/до перемещения позиции курсора на другую запись.

OnCalcFields - происходит при открытии набора данных, перевода его в состояние dsEdit, перемещении фокуса ввода от одного компонента к другому или от одного столбца к другому, при изменениях записи или при извлечении записи из базы данных, но только в том случае, если значение свойства AutoCalcFields равно True;

OnDeleteError - инициируется, если при попытке удаления строки произошла ошибка - было брошено исключение.

OnEditError - инициируется, если при попытке изменения или вставки записи произошла ошибка - было брошено исключение.

OnPostError - инициируется, если при попытке передать изменение или вставку новой записи происходит ошибка - бросается исключение.

OnFilterRecord - происходит при изменении активной записи и только в том случае, если свойство State набора данных установлено равным dsFilter, а свойство Filtered равно True. Чтобы запись была включена в набор данных, для нее следует установить параметр Accept равным True.

OnNewRecord - происходит при вставке или добавлении новой записи.

: Проектирование приложений БД

Применение многозвенных архитектур

Свойство ServerName или ServerGuide

Приложение - Клиент

TDCOMConection

Свойство

RemoteServer

Свойство

TClietntDataSet ProviderName

Свойство DataSet

TDataSourse

Свойство DataSourse

TDBGrid, TDBEdit,

TDBText и др.

Приложение – Сервер (Remote Data Module)

TDatabase

Сервер БД

 

TDataSet

Свойство DataSet

TDataSetProvider

: Проектирование приложений БД

Применение многозвенных архитектур

Применение многозвенной архитектуры позволяет вынести бизнес-логику работы с данными в приложение-сервер.

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

Такая архитектура позволяет реализовывать доступ к серверу БД из приложения- сервера, не имея на клиентских машинах никаких драйверов доступа к базе данных.

Большое преимущество использования такой архитектуры заключается также в возможности изменения серверной части без необходимости перетрансляции клиентского приложения.

Приложение-сервер получает набор данных стандартным способом - через один из компонентов набора данных, таких как TTable или Tquery, и пересылает его с помощью компонента TDataSetProvider компоненту TClientDataSet в приложение- клиент. Приложение-сервер реализуется как удаленный модуль данных, представляющий из себя СОМ-объект. Доступ к такому компоненту может быть выполнен посредством DCOM с любого удаленного компьютера.

Соседние файлы в папке Презентации по технологиям БД