Слайд 1Спецкурс “Основи баз даних”
Розділ 6.
Інтерфейс користувача бази даних
За підручником
І. О. Завадського
Слайд 2Повторення
Як у базах даних Microsoft Access моделюють зв'язок «багато-до-багатьох» між
двома сутностями?
Якщо між сутностями існує зв'язок «один-до-багатьох», то як моделюють
зв'язок між об'єктами цих сутностей?
Чим відрізняється конструктор таблиці від майстра створення таблиці?
Яка таблиця називається головною, а яка підлеглою?
Слайд 3Мотивація навчання на уроці
Коли ми входимо до облікового запису електронної
пошти, поштова служба звертається до розміщеної на сервері БД, щоб
перевірити, чи збігається збережений в базі даних пароль з тим, який було введено в екранну форму.
Однак жодних об'єктів бази даних — полів, записів, таблиць і т. п. — під час цього ми не побачимо, оскільки вони «приховані» за інтерфейсом прикладної програми— служби веб-пошти.
Такий підхід виправданий і зрозумілий: можна тільки уявити, наскільки незручно було б користувачеві самому шукати потрібну таблицю в БД, у ній — «свій» запис тощо. Насправді користувач майже ніколи не оперує з базою даних напряму, а послуговується натомість інтерфейсом прикладних програм, де він може вводити дані у спеціально сконструйованих діалогових вікнах.
У деякі СКБД, і зокрема у MicrosoftAccess, вбудовано засоби розробки інтерфейсу користувача для введення, редагування та виведення даних з бази.
Ми познайомимося з одним із таких засобів, формами — діалоговими вікнами, призначеними для введення і редагування даних у таблицях.
Слайд 4Створення форм у режимі майстра
У MS Access 2003 для створення
форм, так само, як і для створення інших об'єктів, є
два автоматизовані засоби: майстер та конструктор. Можливості майстра вужчі, але використовувати його легше.
У MS Access 2007/2010 в області Формы на стрічці Создание є кілька кнопок, за допомогою яких створюють прості стандартні форми, але спосіб їх використання очевидний.
Слайд 5Створення форми для введення даних в одну таблицю
Найчастіше форму створюють
для введення та редагування даних в одній таблиці.
Щоб створити
таку форму за допомогою майстра, в Access 2007/2010 — слід виконати команду Мастер форм з меню кнопки Другие формы в області Формы на стрічці Создание.
Слайд 6Створення форми для введення даних в одну таблицю
У першому вікні
майстра зі списку Таблицы и запросы слід вибрати таблицю, для
якої створюється форма, і всі поля таблиці буде відображено у списку Доступные поля. Ті поля, у які вводитиме дані користувач, необхідно перенести до списку Выбранные поля за допомогою кнопок (перенести виділене поле) та
(перенести всі поля). Якщо будуть вибрані зайві поля, Для скасування вибору слід скористатися кнопкою чи .
Слайд 7На рис. показано, як створюється форма для таблиці Учні. Спочатку
необхідно вибрати всі поля, крім поля код, оскільки його тип
— лічильник і дані в нього користувач не вводитиме.
Перше вікно майстра створення форми
Слайд 8У другому вікні майстра потрібно вказати спосіб подання інформації у
формі. Найбільш поширеними вважають три способи.
Слайд 10У третьому вікні майстра вибирають дизайн, тобто колірну гаму, шрифти
й інші параметри самої форми та розміщених на ній елементів
керування.
Слайд 11У четвертому вікні слід увести ім'я форми (воно може збігатися
з іменем таблиці) та клацнути кнопку Готово.
Слайд 12Створення форми для однієї таблиці
Найпростіший спосіб створення форми для однієї
таблиці -виділити таблицю в області переходів і клацнути кнопку Форма,
Разделенная форма або Несколько элементов на стрічці Создание.
Відразу після цього буде відображено макет форми, що матиме вигляд, залежно від того, яку кнопку клацнули
Слайд 13Створення форми для однієї таблиці
Створений макет форми можна відредагувати візуальними
засобами, а потім закрити та використовувати саму форму.
Створена форма відображується
в області переходів MS Access 2007/2010.
Двічі клацніть її, і форма відобразиться у вигляді, що залежить від обраного способу подання даних. Можна вводити дані в поля форми редагувати їх, переміщуватися між полями (за допомогою миші або клавіші Tab), та записами (з використанням навігаційних елементів), видаляти записи, додавати їх тощо.
Слайд 14Завдання 6.1
Створіть форми для таблиць Учні та Класи.
За допомогою
форми створіть запис 10Б класу та введіть відомості про учнів
Григорука Петра, 5.05.1997, та Райчук Олену, 13.01.1998, що навчаються в цьому класі.
Відкривши таблиці, переконайтеся, що дані справді додано.
Слайд 15Створення форми для введення даних у кілька таблиць
Інколи зручно і
логічно, щоб з однієї форми дані вводилися в кілька таблиць.
Наприклад, коли вводимо відомості про вчителя, було б доречно ввести відразу й інформацію про те, у яких класах він викладає, тобто передбачити на одній формі поля для введення даних у таблиці Учителі та Викладання.
Слайд 16Створення форми для введення даних у кілька таблиць
Готова форма в
цьому випадку може виглядати так, як показано на рис.
Фактично
в одному вікні ми бачимо дві форми: головну, де введено дані про вчителя, та підлеглу, де вказують класи, у яких цей учитель викладає.
Кожна з цих форм пов'язана зі своєю таблицею: головна — з таблицею Учителі, а підлегла – з таблицею Викладання.
Крім того, форми зв'язані одна з одною: у підлеглу форму вводять не довільні класи, а класи того вчителя, інформація про якого зберігається в головній формі.
Слайд 17У кожній із цих форм (головній та підлеглій) є свої
навігаційні елементи.
Ті, що розташовані у нижній частині головної форми,
дають змогу переходити від учителя до учителя, а ті, що у підлеглій, переходити між класами, де викладає відображений у головній формі вчитель.
Слайд 18Коли ви створюєте форму для кількох таблиць, перший крок роботи
з майстром буде майже таким самим, як у разі створення
форми для однієї таблиці.
Відмінність лише в тому, що зі списку Таблицы и запросы потрібно спочатку вибрати одну таблицю, відобразити її поля, а потім повторити ті самі дії для інших таблиць.
Слайд 19Вибрано всі поля таблиці Учителі та поле клас таблиці Викладання.
Це означає, що в одному вікні форми буде вводитися вся
інформація про вчителя, а також назви класів, у яких він викладає.
Зауважте, що поле учитель таблиці Викладання, де зберігаються номери паспортів, не вибрано. Це пояснюється тим, що, увівши значення в поле паспорт таблиці Учителі, ми вже знатимемо, про викладання якого вчителя йдеться, тож і вводити номер його паспорта ще кілька разів немає потреби.
Слайд 20На другому кроці майстра створення форми буде відображено вікно, подане
на рис. У ньому ви маєте вказати, якій із двох
таблиць відповідатиме головна форма, вибравши цю таблицю зі списку в лівій частині вікна.
У нашому випадку головна форма будуватиметься за таблицею Учителі. Перемикач внизу вікна визначає спосіб з'єднання головної форми з підлеглою: якщо обрано положення Подчиненные формы, то підлегла форма відображатиметься всередині головної, інакше вона відкриватиметься кнопкою на головній формі і називатиметься зв'язаною.
Третє і четверте вікно майстра будуть такими самими, як і в разі створення форми для однієї таблиці.
Слайд 21Завдання 6.2
Створіть форму для таблиці Учителі із вкладеною формою для
таблиці
викладання.
За допомогою форми додайте інформацію про вчителя Савчука Василя
Семеновича (паспорт СН 512840, чоловік, математик), вказавши, що він викладає у 10А та 10Б класах.
Слайд 22Яку форму варто робити головною
Вияснимо, чому головною ми зробили форму
саме для таблиці Учителі, а підлеглою – для таблиці Викладання?
Тип зв'язку між цими таблицями: одному запису в таблиці Учителі відповідає багато записів у таблиці Викладання. Вибравши учителя, зручно переглянути всі класи, учнів яких він навчає.
Якщо в головній формі відобразити таблицю Викладання, кожному її запису відповідав би один учитель, для якого створювати підлеглу форму було б недоцільно.
Якщо таблиці з'єднані зв'язком «один-до-багатьох», форму таблиці, розташованої з боку «багато» можна зробити підлеглою до форми таблиці, розташованої з боку «один».
Слайд 23Редагування форм у конструкторі
З точки зору розробника інтерфейсу БД форма
являє собою набір елементів керування — текстових полів, написів, списків
і т.п.
Їх можна переміщувати, розтягувати, стискати, додавати, видаляти, змінювати розмір і тип шрифтів тощо.
Ці дії виконують у конструкторі форм. Щоб відкрити його, потрібно з контекстного меню значка форми в головному вікні бази даних або в області переходів вибрати команду Конструктор.
Слайд 25Який би запис не відображався у формі, вміст цих областей
залишається незмінним.
За умовчанням області заголовка та приміток згорнуті: є смужки
з назвами цих областей, але самих областей не видно. Щоб розгорнути область, потрібно встановити курсор на нижню межу смужки та протягнути її вниз.
Слайд 26Коли працюємо з конструктором форми, з'являються стрічки Конструктор та Упорядочить.
За допомогою стрічки Конструктор можна додавати до форми нові елементи
керування, настроювати параметри шрифтів та ін., а за допомогою стрічки Упорядочить керувати способом розташування елементів на формі.
Елементи керування на формі можуть бути розташовані згідно з певним макетом, який обирають в області Макет элемента управления на стрічці Упорядочить.
Власне, є два макети:
Слайд 27Майстер розміщує елементи керування на формі згідно з макетом В
столбик. Щоб елементи керування вільно переміщувати по формі та змінювати
їх розміри, макет слід видалити, клацнувши кнопку Удалить в області Макет элемента управления. Якщо цього не зробити, елементи керування переміщуватимуться тільки всі разом, а їх розміри змінюватимуться лише пропорційно.
Якщо макет видалено, то виділивши кілька елементів керування, з ними можна виконати ті самі дії, що і в будь-якому векторному графічному редакторі: вирівняти, перемістити на задній чи передній план, згрупувати, прив'язати до сітки тощо.
Кнопки для цих дій розташовано на стрічці Упорядочить.
Слайд 28Майже всі дії з елементом керування можна виконати за допомогою
його контекстного меню. У результаті вибору команди Свойства цього меню
відображається вікно властивостей, де можна ввести значення всіх параметрів у текстовому вигляді.
Щоб відкрити вікно властивостей всієї форми, слід клацнути правою кнопкою миші позначку у лівому верхньому куті форми та вибрати з меню команду Свойства.
Слайд 29Ми не розглядатимемо параметрів елементів керування детально, а звернемо увагу
лише на найважливіший з них.
У вікні властивостей більшості елементів
керування є вкладка Данные, а на ній — однойменний параметр. Значенням цього параметра є назва поля таблиці БД, з яким зв'язано елемент керування. Термін «зв'язано» тут означає, що дані, введені в елемент керування, автоматично записуватимуться у відповідний елемент таблиці БД.
Клацнувши кнопку v справа від значення цього параметра, елемент керування можна зв'язати з іншим полем.
Слайд 30Вправа 6.1
Щоб дізнатися, як використовувати конструктор форм, виконаємо вправу 6.1.
Змініть форму Учні, забезпечивши вибір дати народження учня з календаря.
Клацніть
правою кнопкою миші форму Учні в області переходів або на вкладці Формы головного вікна бази даних і виберіть з контекстного меню команду Конструктор.
У вікні конструктора форми виділіть текстове поле і напис дата народження та видаліть їх, натиснувши клавішу Del.
Додайте до форми елемент керування Календар. Клацніть кнопку Элементы ActiveX на стрічці Конструктор у групі команд Елементи управління. У вікні, що відкриється, виберіть пункт Елемент керування Календар 11.0, Календар 12.0 або подібний (ці елементи розташовано ближче до кінця списку). Календар з'явиться у формі.
Слайд 31Вправа 6.1
Змініть форму Учні, забезпечивши вибір дати народження учня з
календаря.
. Скоріш за все, календар затулятиме інші елементи керування. Щоб
уникнути цього, розширте область даних форми, перетягнувши вниз верхню межу смужки Примечание формы, та перемістіть календар на вільне місце. Можливо, потрібно буде перемістити й інші елементи керування.
Над календарем створіть напис дата народження. Для цього на панелі елементів керування або на стрічці Конструктор клацніть кнопку (Напис), а потім клацніть форму там, де напис розміщуватиметься, і введіть текст.
Зв'яжіть календар із полем дата народження. Для цього клацніть календар правою кнопкою миші, виберіть у контекстному меню команду Свойства, на вкладці Данные клацніть поле справа від параметра Данные. З'явиться кнопка . Клацніть її і виберіть у списку, що відкриється, поле дата народження. Закрийте вікно властивостей.
Закрийте вікно конструктора форми, зберігши внесені зміни.
Відкрийте форму і змініть дату народження одного з учнів, скориставшись календарем. Після цього відкрийте таблицю Учні і переконайтеся, що дату народження дійсно змінено.