Курсовая работа: Система управління базою даних (підсистема "Бібліотека") в середовищі Access
Таблиця 2.1 - Перелік атрибутів для формування універсального відношення бази даних вузу (підсистема “Бібліотека”)
Назва атрибуту | Ім’я поля | Коментар |
№ номер продукції | № | унікальне |
категорія_літератури | Категорія літератури | унікальне |
назва_книги | Назва книги | може повторюватись |
дата_отримання | Дата отримання | може повторюватись |
П_І_Б_читача | Прізвище | може повторюватись |
Ім’я | ||
Побатькові | ||
рік_народження | Рік народження | може повторюватись |
адреса | адреса | може повторюватись |
код_книги | Код книги | унікальне |
автор | автор | може повторюватись |
рік_друку | Рік друку | може повторюватись |
мова_книги | мова_книги | може повторюватись |
кількість_сторінок | Кількість сторінок | може повторюватись |
видавник | видавник | може повторюватись |
зображення | зображення | унікальне |
3. Розробка ЕR-моделі предметної області
ER-модель (entіty-relatіonshіp model) базується на важливості інформації про об’єкт дослідження і призначена для логічного представлення даних – вона визначає дані в контексті їх взаємозв’язків з іншими даними. Фактично, на основі даної моделі можуть бути побудовані і такі, як ієрархічна, мережева, реляційна моделі.
Під сутністю ЕR-моделі слід розуміти об’єкт, який може бути ідентифікований деяким способом, що відрізняє його від інших об’єктів (наприклад, людина). Будь-яка сутність складається з множини атрибутів, які описують властивості всіх об’єктів, що належать до даної сутності [3].
В данному проекті сутностями є такі об'єкти: жанри книг, картки читачів, жанри літератури.
Характеристики зв’язків предметної області можна представити за допомогою ER-моделей. Зв'язок в рамках ER-моделі представляє собою деяку асоціацію, встановлену, як мінімум між двома сутностями [4]. Це можна побачити на рисунках нижче.
Рисунок 3.1– ER-діаграма сутностей «Жанри книг» і «Жанри літератури»
Рисунок 3.2 – ER-діаграма сутностей «Жанри літератури» і «Картки читачів»
Аналізуючи наведені ER-моделі, можна описати характеристику зв’язків предметної області „Бібліотека” і побудувати результуючу ER-модель.
Таблиця 3.1 - Характеристика зв’язків предметної області
Суть 1 | Суть 2 | Тип зв’язку | Ім’я зв’язку | Тип належності |
Жанри книг | Картки читачів | 1:1 | Можуть підлягати | не обов.;не обов. |
Жанри літератури | Картки читачів | 1:1 | Має | не обов.; обов. |
4 Проектування нормалізованих відношень
4.1 Одержання початкових відношень по методу “суть – зв'язок”
Загальний підхід до проектування баз данних на основі ER-методу що включає в себе наступні кроки:
- побудова діаграми ER - типу , що включає в свій склад всі суті і зв'язки данної предметної області;
- побудова набору попередніх відношень за вказівкою передбачуваного початкового ключа для кожного відношення ;
- підготовка списку всіх цікавлячих атрибутів (котрі не були перераховані в якості ключів сутей) і назначення кожного з цих атрибутів одному з попередніх відношень так, щоб ці попередні відношення знаходились в нормальних форм. Для виконання цієї задачі необхідно визначити всі міжатрибутні функціональні залежності. У випадку, якщо не вдається привести відношення до нормальних форм або деяким атрибутам не вдасться знайти логічно обгрунтованих місць, слід переглянути ER - діаграми на предмет видалення колізій що виникли.
Попередні відношення формально генеруються з діаграм ER-типу на основі аналізу класу належності і степені відношень сутей, на основі існуючих семи правил.
Ми маємо універсальне відношення:
R (№, категорія_літератури, назва_книги, дата_отримання, П_І_Б_читача, рік_народження, адреса, номер_телефонна, код_книги, автор, рік_друку, язик_книги, кількість_сторінок, видавник, зображення).
Для розглянутого прикладу універсальне відношення необхідно розбити на три відношення:
R1(№, категорія_літератури);
R2(назва_книги, дата_отримання, П_І_Б_читача, рік_народження, адреса, номер_телефонна);
R3(код_книги, автор, рік_друку, язик_книги, кількість_сторінок, видавник, зображення).
Правило 1: якщо степінь бінарних зв’язків 1:1 і клас належності обов’язковий для обох сутей, гарантується однократне появлення кожного значення сутей в будь-якому екземплярі відношень. Тобто у відношенні ніколи не буде ні порожньої інформації, ні груп надлишкових даних що повторються. Проте, якщо клас належності однієї з сутей стане необов’язковим, то одного відношеня буде недостаньо, оскільки у всіх кортежах що містять інформацію про екземпляри однієї суті, що не мають зв’язків з екземплярами другоі суті, з’являються пробіли [9].
Правило 2: якщо степінь бінарного зв’язку 1:1 і клас належності однієї суті являється обов’язковим, а інший необов’язковим , то необхідна побудова двох відношень. При цьому ключ суті повинен служити первинним ключем для відповідного відношення. Крім того, ключ суті, для котрого клас належності являється обов’язковим, добавляється у якості атрибута у відношення, що видалений для суті з обов’язковим класом належності.
Формування двох відношень, кортежі кожного з яких включають лише опис атрибутів відповідної суті, приводить до виключення пробілів у відношеннях [10]. При цьому зв’язок між сутями буде притримуватися завдяки включенню в одне з відношень ключевих атрибутів іншої суті.
Правило 3: якщо степінь бінарного зв’язку 1:1 клас належності обох сутей не являється обов’язковим, то необхідно використовувати три відношення: по одному для кожноі суті, ключі котрих служать у якості первинних ключів відповідних відношень, і один для зв’язку. Первинним ключем цього відношення може бути будь-яка з двох сутей. Серед своїх атрибутів відношення, що виділється для зв’язку, повинно мати по одному ключеві суті кожноі суті.