Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Теорія Access 2010.doc
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
3.57 Mб
Скачать

Логічна структура бази даних

Логічна структура бази даних «Навчальний процес» наведена на рис.3.1. Вона є адекватним відображенням інформаційно-логічної моделі. Кожен інформаційний об'єкт моделі даних відображається відповідною реляційною таблицею.

Зв'язки між об'єктами моделі даних реалізуються однаковими реквізитами – ключами зв'язку у відповідних таблицях. При цьому ключем зв'язку завжди є унікальний ключ головної таблиці. Ключем зв'язку в підлеглій таблиці є або деяка частина унікального ключа в ній, або поле, що не входить до складу первинного ключа (наприклад, код кафедри в таблиці ВИКЛАДАЧІ). Ключ зв'язку в підлеглій таблиці називається зовнішнім ключем.

На цій схемі прямокутники відображають таблиці БД із повним списком їхніх полів, а зв‘язки показують, по яких полях здійснюється взаємозв'язок таблиць. Імена ключових полів для наочності виділені і перебувають у верхній частині повного списку полів кожної таблиці.

Рис. 3.1. Логічна структура реляційної бази даних “Навчальний процес”

Включення таблиць у схему даних

Розглянемо процес створення схеми даних відповідно до логічної структури БД «Навчальний процес». При активному вікні Навчальний процес натиснемо на вкладку Робота з базами данных. У меню, що відкрився, натиснемо Схема данных. Натиснемо лівою кнопкою миші на вільній ділянці і виберемо Додати таблицю, виберемо таблиці ы, натискаючи кнопку Додати, розмістимо у вікні Схема данных. Потім натиснемо кнопку Закрити. У результаті у вікні Схема данных будуть представлені всі таблиці бази даних «Навчальний процес» зі списками своїх полів (див. рис. 3.2).

Рис. 3.2. Схема даних БД «Навчальний процес»

Визначення зв'язків між таблицями схеми даних

Визначення зв'язків по простому ключу. Встановимо зв'язок між таблицями ГРУПА ы СТУДЕНТ по простому ключу НГ.

Для цього у вікні Схеми данных установимо курсор миші на ключовому полі НГ головної таблиці ГРУПА і перетягнемо його на поле НГ у підлеглій таблиці СТУДЕНТ. У відкритому вікні Зміна зв'язків у рядку Тип встановиться відношення один - до-багатьох. Відзначимо параметр Обеспечение целостности данных. Якщо таблиця ГРУПА і СТУДЕНТ раніше були заповнені коректними даними, між таблицями буде встановлено зв‘язок, позначений на схемі як 1:∞. Це свідчить про реєстрацію зв'язку типу 1:Б з параметром підтримки цілісності. У противному випадку з'явиться повідомлення про неможливість установити цей тип відносин.

Для забезпечення автоматичного коректування даних у взаємозалежних таблицях встановимо прапорець каскадное обновление связей звязаных полей і каскадное удаление звязаных записей.

Аналогічні дії виконуються для інших пар таблиць КАФЕДРА > ВИКЛАДАЧІ (ключ ККАФ), ПРЕДМЕТ > НАВЧАННЯ (ключ КН), ВИКЛАДАЧІ > НАВЧАННЯ (ключ ТАБН), ГРУПА > НАВЧАННЯ (ключ НГ).

Визначення зв'язків по складному ключі. Визначимо зв'язок між таблицями СТУДЕНТ > УСПІШНІСТЬ, які зв'язані по складному ключу НГ+НС. Для цього в головній таблиці СТУДЕНТ виділимо обидва поля, утримуючи клавішу Ctrl. Перетягнемо обидва поля на поле НГ у підлеглій таблиці УСПІШНІСТЬ.

У вікні Изменение звязи (рис. 3.3) для ключового поля НС головної таблиці ТАБЛИЦА/ЗАПРОС виберемо відповідне поле підлеглої таблиці СВЯЗАННАЯ ТАБЛИЦА/ЗАПРОС. У цьому ж вікні встановимо режими Обеспечение целостности данных і інші параметри зв'язку.

Рис. 3.3. Вікно вибору параметрів Зв'язку

Аналогічно визначаються зв'язки між парою таблиць НАВЧАННЯ > УСПІШНІСТЬ (складний ключ зв'язку - НГ+КП+ТАБН+ВИДЗ).

Після визначення зв'язків таблиці можуть переміщатися в межах робочого простору вікна схеми даних. Переміщення і зміни розмірів таблиць здійснюються прийнятими у Windows способами. На рис. 3.2 показана схема даних «Навчальний процес», де таблиці розміщені відповідно до їхньої відносної підпорядкованості.

Перевірка працездатності схеми даних, підтримка цілісності здійснюється при конструюванні форм, запитів, звітів і їхньому використанні, а також при безпосередньому коректуванні таблиць.

Перевірка підтримки цілісності у базі даних

На рис. 3.2 у створеній схемі даних БД «Навчальний процес» всі зв'язки відзначені символами 1: ∞, що свідчить про встановлення зв'язків типу 1:Б (по простому або складному ключу), для яких буде забезпечуватися цілісність даних.

Перевіримо підтримку цілісності при внесенні змін у таблиці ГРУПА > СТУДЕНТ, зв'язані одне-багатозначними відносинами.

Перевірка цілісності при зміні значень зв'язаних полів у таблицях.

Відкриємо таблицю ГРУПА в режимі таблиці. Змінимо значення ключового поля НГ (номер групи) в одній із записів головної таблиці ГРУПА. Переконаємося, що у всіх записах підпорядкованої таблиці СТУДЕНТ, для студентів, що навчаються в цій групі, автоматично також зміниться значення поля НГ. Зміна відбувається, оскільки був установлений параметр каскадное обновление связных полей (див рис. 3.3). Причому ця зміна відбувається миттєво, як тільки запис перестає бути поточним. Для перегляду за автоматичними змінами у підлеглій таблиці відкриємо на екрані одночасно таблиці ГРУПА і СТУДЕНТ. Відкривши інші підлеглі таблиці, можна переконатися, що каскадне відновлення поширюється також на підлеглі таблиці НАВЧАННЯ і УСПІШНІСТЬ.

Змінимо значення ключа зв'язку НГ у підлеглій таблиці СТУДЕНТ на значення, якого нема в записах таблиці ГРУПА, і переконаємося, що така зміна заборонена, тому що при підтримці цілісності не може існувати запис підлеглої таблиці із ключем зв'язку, якого немає в головній таблиці.

Перевірка при додаванні записів у підлеглу таблицю. Переконаємося, що разом з видаленням запису в головній таблиці ГРУПА видаляються всі підлеглі записи, тому що був установлений параметр каскадное удаление связанных записей.

Якщо каскадне видалення не дозволене, з'явиться повідомлення (рис. 3.4).

Рис.3.4. Повідомлення про неможливість внесення змін у таблицю НАВЧАННЯ

Визначення технології завантаження бази даних

Розглянемо технологію завантаження на прикладі бази даних “Навчальний процес”, у якому зв'язки між таблицями відповідають схемі даних, наведеної в цій главі .

Таблиці-об'єкти завантаження

Визначимо об'єкти завантаження - групи із взаємозалежних таблиць, що підлягають завантаженню з одного документа:

1. Таблиці ГРУПА >СТУДЕНТ. Завантаження записів цих таблиць буде провадитися одночасно з одного документа “Список студентів групи ”, що забезпечує формування взаємозв'язків записів студентів з відповідним записом групи. При цьому буде забезпечене однократне введення реквізитів ГРУПИ і однократне введення значень НГ для всіх студентів групи.

2. Таблиці КАФЕДРА> ВИКЛАДАЧІ. Завантаження записів цих таблиць також буде провадитися одночасно з одного документа “Список викладачів кафедри ”, що забезпечує відразу формування взаємозв'язків записів викладачів із відповідним записом кафедри. При цьому буде забезпечене однократне введення реквізитів КАФЕДРИ і однократне введення значень ККАФ для всіх викладачів кафедри.

3. Таблиця ПРЕДМЕТ. Завантаження цієї таблиці може провадитися із плану проведення занять у групах. При цьому досить ввести складений ідентифікатор заняття, не вводячи найменування предмета і прізвища викладача.

4. Таблиця НАВЧАННЯ. Завантаження цієї таблиці може провадитися із плану проведення занять у групах. При цьому досить ввести складний ідентифікатор заняття, не вводячи найменування предмета і прізвища викладача.

5. Таблиця УСПІШНІСТЬ. Завантаження цієї таблиці може провадитися із заповненням екзаменаційної відомості групи. При цьому досить точно ввести складний ідентифікатор, не вводячи прізвища студента, найменування предмету, прізвища викладача.