|
Побудова попередніх відношеньНаступний етап проектування РБД полягає в тому, щоб за допомогою одного з шести правил Джексона скласти набір попередніх відношень. Вибір правила здійснюється на підставі встановленого типу зв’язку. Розглянемо як користуватися цими правилами на прикладах проектування РБД для металургійного комбінату, в який повинні відбиватися відомості про очікування вантажів одержувачами. Правило №1 Таблиця 10 – Універсальне відношення 1:
Рис. 8 – Схема функціональних залежностей між атрибутами Рис. 9 – Діаграми ER-екземплярів та ER-типу. Правило № 1. Якщо тип бінарного зв’язку 1:1, то потрібне лише одне відношення. Первинним ключем цього відношення може бути будь-який із ключів виділених сутностей. Тобто універсальне відношення 1 не потребує нормалізації. Первинним ключем цього відношення може бути призначений атрибут Код_одержувача (ключ сутності ОДЕРЖУВАЧ) або атрибут Код_вантажу (ключ сутності ВАНТАЖ). Дійсно, кожний детермінант універсального відношення 1 є можливим ключем,тому відношення знаходиться в НФБК і тому не потребує нормалізації. Якщо при визначенні детермінантів та можливих ключів універсального відношення 1 допущена помилка, то все одно, відповідно до правила №1, в РБД лишиться одне попереднє відношення. Правило №2 Таблиця 11 – Універсальне відношення 2:
Рис. 10 – Схема функціональних залежностей між атрибутами Рис. 11 – Діаграми ER-екземплярів та ER-типу. Правило №2. Якщо тип бінарного зв’язку 1:1 або 1:1, то достатньо двох відношень: по одному для кожної сутності, ключі сутностей використовуються в якості первинних у відповідних відношеннях. Додатково ключ необов’язкової сутності додається у відношення, виділене для обов’язкової сутності. Відповідно до вимог правила 2 складаємо два відношення спочатку в скороченому вигляді. Їх ще називають схемами відношень. 1) ОДЕРЖУВАЧ(Код_одержувача, Назва_одержувача, Код_станції, Код_вантажу); 2) ВАНТАЖ(Код_вантажу, Найменування_вантажу). Зауважимо, що атрибут Код_вантажу, як ключ необов’язкової сутності ВАНТАЖ, доданий у відношення ОДЕРЖУВАЧ. А тепер подамо отримані відношення разом із даними у вигляді таблиць. Таблиця 12 – Відношення ОДЕРЖУВАЧ: Таблиця 13 – Відношення ВАНТАЖ:
Рис. 12 – Схема функціональних залежностей між атрибутами Рис. 13 – Схема функціональних залежностей між атрибутами Правило №3 Таблиця 14 – Універсальне відношення 3:
Рис. 14 – Схема функціональних залежностей між атрибутами Рис. 15 – Діаграми ER-екземплярів та ER-типу. Правило №3. Якщо тип бінарного зв'язку 1:1, то достатньо трьох відношень: по одному для кожної сутності, ключі сутностей використовуються в якості первинних у відповідних відношеннях, і ще одне відношення для зв'язку. Відношення зв'язку повинне мати серед своїх атрибутів ключ від кожної сутності, в якості первинного ключа цього відношення може бути будь-якій з ключів виділених сутностей. Відповідно до вимог правила 3 складаємо спочатку три схеми відношень. 1) ОДЕРЖУВАЧ(Код_одержувача, Назва_одержувача, Код_станції); 2) ВАНТАЖ(Код_вантажу, Найменування_вантажу); 3) ОДЕРЖУВАЧ–ВАНТАЖ(Код_одержувача, Код_вантажу). Зауважимо, що у відношенні зв’язку ОДЕРЖУВАЧ–ВАНТАЖ цілком можливо призначити первинним ключем атрибут Код_вантажу. А тепер подамо отримані відношення разом із даними у вигляді таблиць.
Рис. 16 – Схема функціональних залежностей між атрибутами Рис. 17 – Схема функціональних залежностей між атрибутами Рис. 18 – Схема функціональних залежностей між атрибутами Правило №4 Таблиця 18 – Універсальне відношення 4:
Рис. 19 – Схема функціональних залежностей між атрибутами Рис. 20 –Діаграми ER-екземплярів та ER-типу. Правило №4. Якщо тип бінарного зв'язку 1:n, 1:n, n:1, або n:1, то достатньо двох відношень: по одному для кожної сутності, ключі сутностей використовуються в якості первинних у відповідних відношеннях. Додатково ключ однозв'язкової сутності додається як атрибут у відношення, виділене для багатозв'язкової сутності. Відповідно до вимог правила 4 складаємо спочатку дві схеми відношень. 1) ОДЕРЖУВАЧ(Код_одержувача, Назва_одержувача, Код_станції); 2) ВАНТАЖ(Код_вантажу, Найменування_вантажу, Код_одержувача). Зауважимо, що атрибут Код_одержувача, як ключ однозв’язкової сутності ОДЕРЖУВАЧ, доданий у відношення ВАНТАЖ. А тепер подамо отримані відношення разом із даними у вигляді таблиць. Таблиця 19 – Відношення ОДЕРЖУВАЧ: Таблиця 20 – Відношення ВАНТАЖ:
Рис. 21 – Схема функціональних залежностей між атрибутами Рис. 22 – Схема функціональних залежностей між атрибутами Правило №5 Таблиця 21 – Універсальне відношення 5:
Рис. 23 – Схема функціональних залежностей між атрибутами Рис. 24 – Діаграми ER-екземплярів та ER-типу. Правило №5. Якщо тип бінарного зв'язку 1:n, 1:n, n:1, n:1, то достатньо трьох відношень: по одному для кожної сутності, ключі сутностей використовуються в якості первинних у відповідних відношеннях, і ще одне відношення для зв'язку. Відношення зв'язку повинне мати серед своїх атрибутів ключ від кожної сутності, первинним ключем цього відношення буде ключ багатозв'язкової сутності. Відповідно до вимог правила 5 складаємо спочатку три схеми відношень. 1) ОДЕРЖУВАЧ(Код_одержувача, Назва_одержувача, Код_станції); 2) ВАНТАЖ(Код_вантажу, Найменування_вантажу); 3) ОДЕРЖУВАЧ–ВАНТАЖ(Код_одержувача, Код_вантажу). Зауважимо, що у відношенні зв’язку ОДЕРЖУВАЧ–ВАНТАЖ в якості первинного ключа використовується атрибут Код_вантажу. А взагалі, завжди коли для виводу попередніх відношень використовується правило №5, у відношенні зв’язку первинним ключем призначається ключ багатозв’язкової сутності. А тепер подамо отримані відношення разом із даними у вигляді таблиць.
Рис. 25 – Схема функціональних залежностей між атрибутами Рис. 26 – Схема функціональних залежностей між атрибутами Рис. 27 – Схема функціональних залежностей між атрибутами Правило №6 Таблиця 25 – Універсальне відношення 6:
Рис. 2 Ё8 – Схема функціональних залежностей між атрибутами Рис. 29 – Діаграми ER-екземплярів та ER-типу. Правило №6. Якщо тип бінарного зв'язку m: n, m: n, m: n, або m: n, то достатньо трьох відношень: по одному для кожної сутності, ключі сутностей використовуються в якості первинних у відповідних відношеннях, і ще одне відношення для зв'язку. Відношення зв'язку повинне мати серед своїх атрибутів ключ від кожної сутності, первинний ключ цього відношення буде складений з ключів виділених сутностей. Відповідно до вимог правила 6 складаємо спочатку три схеми відношень. 1) ОДЕРЖУВАЧ(Код_одержувача, Назва_одержувача, Код_станції); 2) ВАНТАЖ(Код_вантажу, Найменування_вантажу); 3) ОДЕРЖУВАЧ–ВАНТАЖ(Код_одержувача, Код_вантажу). Зауважимо, що у відношенні зв’язку ОДЕРЖУВАЧ–ВАНТАЖ в якості первинного ключа використовується пара атрибутів Код_одержувача і Код_вантажу. А взагалі завжди, коли для виводу попередніх відношень використовується правило №6, у відношенні зв’язку первинним ключем призначається пара атрибутів, складена з ключів обох сутностей. А тепер подамо отримані відношення разом із даними у вигляді таблиць.
Рис. 30 – Схема функціональних залежностей між атрибутами Рис. 31 – Схема функціональних залежностей між атрибутами Рис. 32 – Схема функціональних залежностей між атрибутами Зверніть увагу, що кількість кортежів у відношеннях, відведених під сутності, дорівнює кількості екземплярів відповідної сутності, поданих на діаграмі ER-екземплярів. Кількість кортежів у відношеннях зв’язку дорівнює кількості ліній відповідності на діаграмі ER-екземплярів. ![]() ![]() Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем... ![]() ЧТО ПРОИСХОДИТ ВО ВЗРОСЛОЙ ЖИЗНИ? Если вы все еще «неправильно» связаны с матерью, вы избегаете отделения и независимого взрослого существования... ![]() ЧТО ПРОИСХОДИТ, КОГДА МЫ ССОРИМСЯ Не понимая различий, существующих между мужчинами и женщинами, очень легко довести дело до ссоры... ![]() Что делает отдел по эксплуатации и сопровождению ИС? Отвечает за сохранность данных (расписания копирования, копирование и пр.)... Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:
|