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

13

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ

ЭЛЕКТРОННОЙ ТЕХНИКИ (ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ)

Кафедра информатики и ПО ВС

Дисциплина “Базы данных и экспертные системы”

УТВЕРЖДАЮ

Зав. кафедрой,

профессор, д.т.н.

________ Шаньгин В.Ф.

“____”________ 2000 г.

Лабораторная работа

ИСПОЛЬЗОВАНИЕ ТАБЛИЦ И КОМПОНЕНТОВ

ОТОБРАЖЕНИЯ ДАННЫХ В СИСТЕМЕ DELPHI

Разработал

доцент Илюшечкин В.М.

Москва - 2000

Лабораторная работа

Использование таблиц и компонентов

отображения данных в системе Delphi

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

1. Компоненты, предназначенные для работы с базами данных

Процесс создания приложения для работы с базами данных (БД) не отличается от разработки любого другого приложения в системе Delphi: в одну или несколько форм помещаются компоненты, которые настраиваются надлежащим образом, чтобы выполнять требуемые действия.

Компоненты для работы с БД реализуют наиболее употребимые функции и позволяют конструировать интерфейс и подключать приложения к данным практически без написания программного кода. В палитре компонентов на странице Data Access сгруппированы компоненты доступа к данным, а на странице Data Controls — компоненты отображения и управления данными. Приложение, работающее с БД, обычно имеет в своем составе три вида компонентов (рис.1). Во-первых, компонент для связи с BDE и через него с БД. Это может быть компонент типа TTable или TQuery. Во-вторых, компонент типа TDataSource, который предназначен для соединения используемых приложением наборов данных с визуальными компонентами пользовательского интерфейса. В-третьих, визуальные компоненты для создания такого интерфейса. Количество компонентов и их взаимодействие определяется используемыми данными и решаемыми задачами.

Приложение

Визуальные компоненты (компоненты, отображающие

данные и управляющие данными)

TDBEdit . . . TDBGrid TDBNavigator

Компоненты доступа к данным

TDataSource TDataSource

TTable TQuery

БД Borland Database Engine (BDE)

Рис.1. Использование компонентов для работы с базами данных (БД).

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

Database Desktop (DBD) — утилита для создания и редактирования БД;

Database Form Expert (эксперт форм БД) — интерактивное приложение для создания различных форм, предназначенных для отображения данных;

Field Editor (редактор полей) — средство визуального задания структуры наборов данных и определения свойств их полей;

Visual Query Builder — средство для визуального построения SQL-запросов к БД;

ReportSmith — генератор отчетов.

Компоненты, предназначенные для работы с БД, и их важнейшие свойства рассмотрим на примере приложений, создаваемых с помощью эксперта форм БД.

2. Использование эксперта форм бд

Эксперт форм позволяет быстро создавать различные типы форм для приложений, работающих с БД. Среди них формы типа “ввод/редактирование”, “сетка”, “главная таблица/подчиненная таблица”. Вместе с интерфейсом для таких форм, который может содержать различные визуальные компоненты отображения данных, эксперт форм автоматически размещает в окне создаваемой формы все необходимые компоненты связи с данными и определяет их важнейшие свойства в соответствии с требованиями разработчика. Вызов Эксперта форм осуществляется командой Help|Database Form Expert главного меню Delphi.

Процесс создания новой формы проходит в интерактивном режиме. В нескольких открывающихся одно за другим окнах эксперта форм БД разработчик должен определить ряд параметров, которые используются при создании интерфейса формы и связывании данных из требуемых таблиц с визуальными компонентами. Перемещение по окнам эксперта производится при помощи кнопок Next и Prev.

Первое окно (рис.2) содержит две группы опций. Группа Form Options позволяет выбрать тип создаваемой формы: Create a simple form создает форму типа ”сетка” или “ввод/редактирование”, в которой отображаются данные из одной таблицы в визуальных компонентах типа TDBGrid или TDBEdit соответственно; Create a master/detail form создает форму типа “главная/подчиненная”, в которой отображаются данные из двух связанных между собой таблиц в выбранных визуальных компонентах. Группа DataSet Options предназначена для выбора компонента, обеспечивающего доступ к данным.

Второе окно (рис.3) запрашивает имя и спецификацию файла, содержащего таблицу с необходимыми данными. Интерфейс окна совпадает со стандартным диалогом открытия файла.

Третье окно (рис.4) предназначено для определения тех полей выбранной ранее таблицы, которые должны отображаться в создаваемой форме. Здесь расположены два списка и управляющие кнопки, которые позволяют перемещать имена полей между списками и изменять их порядок следования (только для правого списка).

Рис.2. Окно выбора типа создаваемой формы.

Рис.3. Окно выбора таблицы.

Список Available Fields первоначально содержит имена всех полей из выбранной таблицы. Список Ordered Selected Fields должен включать имена тех полей, которые необходимо отображать в форме в заданном порядке.

Четвертое окно (рис.5) определяет способ расположения отображаемых полей выбранной таблицы.

Рис.4. Окно выбора отображаемых полей таблицы.

Рис.5. Окно выбора способа расположения отображаемых полей.

Горизонтальный способ предполагает расположение полей построчно, друг за другом, начиная с левого верхнего угла формы. Вертикальный способ задает размещение полей по одному в каждой строке, одно под другим; выравнивание проводится по левой стороне формы. Способ “сетка” (Grid) представляет данные в стандартном табличном виде. Выбор способа осуществляется радиокнопкой; при этом в левом верхнем углу окна появляется пиктограмма с соответствующим видом расположения полей.

При создании формы типа “главная/подчиненная” второе, третье и четвертое окна появляются дважды. Сначала необходимо задать в этих окнах параметры для главной таблицы, затем — для подчиненной таблицы. Главная и подчиненная таблицы соединяются посредством связывания одноименных или одинаковых по смыслу полей, имеющихся в этих таблицах. Соединение таблиц выражается в том, что одной строке главной таблицы соответствуют N строк в подчиненной таблице (N>=0). Соответствие строк устанавливается по равенству значений, хранящихся в связанных полях этих строк. В подчиненной таблице все N строк, соответствующие одной строке главной таблицы, должны быть сгруппированы вместе. Группировка строк обеспечивается при создании индекса для подчиненной таблицы и происходит в результате логической сортировки строк таблицы по значениям индексного ключа. В состав индексного ключа входят поля подчиненной таблицы, связанные с полями главной таблицы.

Пятое окно (рис.6) появляется только при создании формы типа “главная/подчиненная” и предназначено для связывания полей двух таблиц. В разворачивающемся списке Available Indexes необходимо выбрать нужный индекс (индексный ключ). Этот выбор влияет на содержимое списка Detail Fields, в котором размещены имена полей подчиненной таблицы, доступные для связывания. Поля главной таблицы содержатся в списке Master Fields. Теперь необходимо задать парные связи между полями главной и подчиненной таблиц. Для этого необходимо пометить пару нужных полей в двух списках при помощи мыши и установить связь между ними, используя кнопку Add. После этого связанные поля отображаются в списке Joined Fields. Этот список можно редактировать кнопками Delete и Clear. Подобным образом необходимо установить все намеченные связи.

Шестое окно определяет только один параметр — будет ли создаваемая форма главной формой приложения. После нажатия кнопки Create начинается генерация формы с установленными ранее свойствами. Одновременно с формой, параметры которой определены в ходе диалога с экспертом форм БД, генерируется соответствующий код на языке Object Pascal.

Тут вы можете оставить комментарий к выбранному абзацу или сообщить об ошибке.

Оставленные комментарии видны всем.