Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР_РиЭУБД.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
4.09 Mб
Скачать

Лабораторная работа №8 Связь таблиц

Цель работы:

- научиться разрабатывать приложения, осуществляющие связь между несколькими таблицами;

Ход работы

  1. Создайте в своей папке на жестком диске Student папку с названием «ЛР_8».

  2. Из папки «7.1» каталога «ЛР_7» скопируйте заполненную базу данных «Books.dbf»

  3. Запустите утилиту Database Desktop.

  4. Выберите команду FileNewTable.

  5. В списке типов форматов таблиц выберите тип формата dBase for Windows или dBaseIV.

  6. Создайте таблицу следующего вида:

  1. Щелкните по кнопке Save As и укажите место сохранения таблицы (например, свою папку на диске Student).

  2. Сохраните таблицу в выбранном месте под именем Izdatelstvo.dbf

  3. Выйдите из утилиты Database Desktop.

  4. Запустите среду Delphi 7.

  5. Присвойте свойству Caption формы название «Связь таблиц».

  6. Установите в свойстве BorderIcons значение False для свойств biMinimize и biMaximize.

  7. Установите свойство формы BorderStyle как bsSingle

  8. Поместите на форму компонент TADOConnection (вкладка ADO) и подключите его к базе данных Books.dbf.

  9. Разместите на форме по два комплекта компонентов TADOTable, TDataSource и TDBGrid.

Примерный вид приложения приведен на Рис.7.2.

  1. Установите свойства расположенных компонентов согласно Таблице 7.1.

Таблица 7.1. Свойства компонентов приложения «Связь таблиц»

Компонент

Свойство

Значение

ADOConnection1

LoginPrompt

False

ADOTable1

Connection

ADOConnection1

TableName

Izdatelstvo

Active

True

DataSource2

DataSet

ADOTable1

DBGrid1

DataSource

DataSource1

DBNavigator1

DataSource

DataSource1

ADOTable2

Connection

ADOConnection1

TableName

Books

Active

True

DataSource2

DataSet

ADOTable2

DBGrid2

DataSource

DataSource2

  1. Для организации связи между таблицами выберите компонент ADOTable2, и установите в его свойстве MasterSource значение DataSource1.

  2. Щелкните по строке с многоточием в свойстве MasterField у компонента ADOTable2 и в окне редактора связей полей установите связь между таблицами по полю Izdatelstvo (Рис.7.3).

  3. Выберите с помощью дерева объектов объект Form1.

  4. В Инспекторе Объектов активизируйте вкладку Events и запишите обработчик события OnCreate (событие, которое происходит при создании формы в приложении):

procedure TForm1.FormCreate(Sender: TObject);

begin

DBGrid1.Columns[0].Title.caption:='Издательство';

DBGrid1.Columns[1].Title.caption:='Город';

DBGrid1.Columns[2].Title.caption:='Год создания';

DBGrid1.Columns[3].Title.caption:='Директор';

DBGrid2.Columns[0].Title.caption:='Издательство';

DBGrid2.Columns[1].Title.caption:='Книга';

DBGrid2.Columns[2].Title.caption:='Автор';

DBGrid2.Columns[3].Title.caption:='Тираж';

DBGrid2.Columns[4].Title.caption:='Обложка';

DBGrid2.Columns[5].Title.caption:='Магазин';

DBGrid2.Columns[6].Title.caption:='Цена';

end;

  1. Запишите обработчик события OnDestroy (событие, которое происходит при разрушении формы в момент закрытия приложения) для формы:

procedure TForm1.FormDestroy(Sender:TObject);

begin

ADOTable1.Close;

end;

  1. Сохраните проект в своей папке.

  2. Запустите проект на выполнение. При появлении сообщения об ошибке нажмите ОК и выберите команду RunProgram Reset (Ctrl+F2).

  3. Выйдите из среды Delphi 7, и, запустив exe-файл, проверьте работоспособность приложения. Для проверки связи между таблицами необходимо заполнить таблицу Izdatelstvo.

В ид работающего приложения приведен на Рис.7.5.