Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метода БД Delphi.doc
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
834 Кб
Скачать
☆

Завдання:

Розробити застосування, що складається з форми для роботи з двома таблицями:

– за допомогою майстра форм Database Form Wizard ;

– вручну з використанням компонентів TTable, TDataSource, TPanel, TScrollBox, TDBNaviganor, TField.

Обов’язкові засоби: Database Desktop, TTable, TDataSource, TDBGrid.

Зміст звіту:

  1. Опис структури двох таблиць, що з’єднані зв’язком типу один-до-багатьох.

  2. Опис розроблених форм.

  3. Висновки по роботі.

Порядок роботи і рекомендації до її виконання

Для таблиць БД, що зв’язані відношенням один-до-багатьох і для яких визначена цілісність посилання, можна розробити форму типу Master-Detail. При встановленні покажчика на деякий запис НД Table1, в НД Table2 будуть показані тільки ті записи, що пов’язані з поточним записом НД Table1.

Розробка форми Master-Detail за допомогою Database Form Wizard

Робота з Database Form Wizard описана в рекомендаціях до роботи №1.

Розробка форми Master-Detail вручну

  1. Для виконання другого завдання відкрити нову форму, що створюється автоматично при відкритті нового проекту – форму Form1.

  2. Помістити на форму два компоненти TPanel (сторінка Standard). TPanel дозволяє об’єднувати декілька компонентів. Перший TPanel розмістити в верхній частині форми і задати властивість Align = AlTop (панель розтягнеться на всю ширину форми). Другий TPanel розмістити в нижній частині форми. Задати для нього властивість Align = AlClient (панель займе увесь нижній простір вікна форми).

  3. Вилучити заголовки панелі. Для цього виділити обидві панелі, перейти в Object Inspector і вилучити значення властивості Caption.

  4. На нижню панель помістити область прокрутки (для того, щоб на формі можна було розмістити більше елементів управління, ніж дозволяють розміри її вікна). Компонент TScrollBox (сторінка Additional) автоматично створює лінійки прокрутки. Встановити для компонента TScrollBox властивість Align = AlClient.

  5. Розмістити невізуальні компоненти: два компоненти TTable і два - TDataSource у верхній частині форми. Встановити властивості для компонентів:

Table1: DatabaseName = DB і TableName = Group.db

Table2: DatabaseName = DB і TableName = Student.db

DataSource1: DataSet = Table1

DataSource2: DataSet = Table2

  1. Розмістити на верхній панелі компонент TDBNavigator (навігатор БД - сторінка DataControls), який є елементом управління для роботи з даними. Встановити для нього властивість DataSource = DataSource1.

  2. Реалізувати механізм зв’язком типу Master-Detail між НД. Для цього встановити для компонента Table2 властивості:

– MasterSource = DataSource1;

– В полі MasterFields натиснути кнопку еліпса. У вікні Field Link Designer встановити параметри зв’язку. В полі Available Indexes вибрати в якості поточного індексу поле, за яким встановлюється зв’язок: GCode (код групи). У списках Detail Fields і Master Fields вибрати поле і натиснути Add. В полі Joined Fields буде сформовано вираз GCode  GCode. Натиснути OK. В компоненті Table2 поточний індекс (властивість IndexName) буде замінено на індекс, побудований за полем GCode.

Таким чином можна вручну створити ту ж форму, що і за допомогою Database Form Wizard.

Приклад: Форма з наборами даних, що пов’язані як один-до-багатьох по полю «номер групи».

Практична робота № 4

Тема: Обробка полів таблиць бази даних

Мета: Виконання основних операцій з обробки полів однієї таблиці, або декількох зв’язаних таблиць