Правила проектирование при бинарной связи 1 к 1. ER-метод, - метод проектирования БД ER-метод – метод сущности. Каждая сущность характеризуется некоторым набором атрибутов. Необходим такой набор атрибутов, который будет однозначно идентифицировать каждую реализацию данной сущности, - ключ; простейший вариант – атрибут «счётчик». Атрибут не повторяется Возможный ключ – это атрибут или набор атрибутов, однозначно идентифицирующих каждую реализацию. Первичный ключ – один из возможных ключей, т.е. для данной сущности первичный ключ – единственный. Класс принадлежности – обязателен, если каждая реализация данной сущности связана хотя бы с одной реализацией другой сущности; иначе – не обязателен. Степень связи Связь между двумя сущностями – бинарная и выше. Степень связи – величина, равная N для данной сущности, если не более N реализаций данной сущности связаны с одной реализацией другой сущности. Степень связи: 1 к 1, 1 ко многим и многие ко многим. Диаграммы ER-реализации Каждая сущность – совокупность точек; рядом с точкой записывается значение первичного ключа, который однозначно идентифицирован. Связи между реализациями – в виде линий. Пример: Работник Должность  В Примере: для сущности «Должность» степень связи = 1; для сущности «Работник» - степень связи = много. Класс принадлежности обеих сущностей обязателен. Бинарная связь: 1:многим (один ко многим). ER – диаграммы - Обоснование необходимости проектирования БД. Правила проектирования при бинарной связи 1 к 1.
Проектирование БД. Действия с БД: а) добавление данных, б) удаление данных, в) изменение данных. Если БД спроектирована неправильно, то могут появиться «аномалии»: -противоречия; -потеря информации; нарушение целостности данных, - потеря связи. Основная цель проектирования – избавиться от аномалий. Косвенный признак аномалии – избыточное дублирование данных. В результате проектирования увеличивается число отношений. Правила проектирование при бинарной связи 1 к 1. Правило 1: В случае бинарной связи 1:1 и обязательных классов принадлежности обеих сущностей необходимо создать 1 отношение из атрибутов обеих сущностей. В качестве первичного ключа отношений можно использовать первичный ключ любой сущности. Правило 2: В случае бинарной связи 1:1 и необязательного класса принадлежности для одной из сущностей необходимо создать 2 отношения: по одному для каждой сущности с соответствующими атрибутами и первичными ключами; кроме того, для организации связи нужно первичный ключ в сущности с необязательным классом принадлежности добавить в качестве атрибута для другой сущности. Правило 3: В случае бинарной связи 1:1 и необязательных классов принадлежности для обеих сущностей необходимо создать 3 отношения: по одному для каждой сущности и отношение для связи, у которого в качестве атрибутов – первичные ключи обеих сущностей. - Правила проектирования при бинарной связи степени выше первой
Правило 4: В случае бинарной связи 1:N и обязательного класса принадлежности для многосвязной сущности необходимо создать 2 отношения: по одному для каждой сущности; кроме этого: для организации связи: первичный ключ односвязной сущности необходимо добавить в качестве атрибута в отношение для многосвязной сущности. Правило 5: В случае бинарной связи 1 к N и не обязательных классов принадлежности необходимо создать 3 отношения: по одному для каждой сущности с соответствующими атрибутами и первичными ключами и 3е – для организации связи: в качестве атрибутов – первичные ключи обеих сущностей и в качестве первичного ключа – первичный ключ многосвязной сущности. Правило 6: В случае бинарной связи «многие ко многим» необходимо создать 3 отношения: по одному для каждой сущности с соответствующими атрибутами и первичными ключами и 3е – для связи; в качестве атрибутов – первичные ключи обеих сущностей; первичный ключ – составной: Связь(NP, KD). - Метод декомпозиции и теория нормальных форм
МД – основан на теории нормальных форм. Основоположник этой теории – Кодд. В соответствие с этой теорией все отношения можно классифицировать по принципу наличия тех или иных аномалий. Здесь – строгая иерархия. Сначала Кодд дал определение первым трём НФ. Отношение находится в 1й НФ, если все его атрибуты – атомарны и обязательны для заполнения. БКНФ – Бойса-Кодда нормальная форма. Далее были рассмотрены 4 и 5 НФ. В конце определили доменно–ключевую НФ (1983г.). Она свободна от всяких аномалий.  - Нормальная форма Бойса-Кодда
Опр.: Атрибут или совокупность атрибутов В функционально зависит от атрибута или совокупности атрибутов А, если каждому значению А соответствует ровно одно значение В: B,A A B Из определения следует, что пустые атрибуты не возможны. Опр.: Для функциональной зависимости A B A является детерминантом этой ФЗ в следующих случаях: а) А является атрибутом; б) если А - совокупность атрибутов, то B функционально не зависит от любого подмножества атрибутов A. Опр.: Отношение находится в БКНФ, если каждый детерминант ФЗ является возможным ключом. Пример: Преподаватель(NP, FIO, DOLG);  Детерминанты: NP; Возм. ключи: NP; т.о.: это отношение находится в БКНФ. - Избыточные функциональные зависимости. Правила вывода
Избыточная ФЗ – функциональная зависимость, наличие которой следует из других ФЗ. Для определения избыточных ФЗ используют следующие правила вывода: 1) Рефлексивность: X: X X. 2) Транзитивность: ( A, B, C) ((A B B C) (A C)).  1 - изб., т.к.: 2, 3; 2 - изб., т.к.: 4, 5; 6 - изб., т.к.: 5, 3. Итак: минимальное покрытие:  3. Расширение: A B, X: A, X B;  4. Пополнение: A B, для любого X: A, X B, X;  5. Декомпозиция: A B, C следовательно: (A C A B);  6. Объединение: Если (A C A B), то A B, C;  7. Псевдотранзитивность: Если (A B B, X C), то A, X C.  Пример:  1. A C; - изб., т.к. 2 и 6; 6. B, E C; изб., т.к. 3; - по правилу 3.  2. По правилу 5: (A B, E) ((A B) (A E)):  2b. A E; - изб., т.к. 4 и 5; - по правилу 2. Т.о.: 2a, 3, 4, 5; - минимальное покрытие:  - Алгоритм декомпозиции. Пример
Алгоритм декомпозиции 1. Разработать универсальное отношение. 2. Определить ФЗ, образующие минимальное покрытие, и их детерминанты на основе принятых соглашений (ограничений). 3. Определить: находиться ли отношение в БКНФ. 4. Если пункт 3 выполнен, то проектирование закончено. В противном случае разбить отношение на 2, в соответствие с указанными выше рекомендациями. 5. Для каждого нового отношения перейти к пункту 2. Пример: Предметная область: информация о студентах. Универсальное отношение: Студент(N, FIO, ADR, TEL, D, SEM, OC); Соглашения: Атрибут N не допускает повторения. По всем остальным атрибутам повторение допускается. По N однозначно определяются FIO, ADR, TEL. Между ADR и TEL – взаимно-однозначное соответствие. По N, D, SEM однозначно определяется оценка: OC. Определим: находится ли данное отношение в БКНФ:  Детерминанты: N; ADR; TEL; N,D,SEM. Возможные ключи: N,D,SEM. Итак: отношение не находится в БКНФ. N | FIO | ADR | TEL | D | SEM | OC | | Иванов | Урицкого, 22 | | инф. | | зачт. | | Иванов | Урицкого, 22 | | инф. | | хор. | | Сидоров | Урицкого, 22 | | инф. | | незачт. | Присутствует избыточное дублирование: а) 3 – избыточная по правилу 2, т.к. 2 и 4а. б) 2 – избыточная по правилу 2, т.к. 3 и 4б. Детерминанты, которые не могут быть возможными ключами: N, ADR, TEL. N ADR TEL Рекомендации: разбить на 2 отношения: R1(N, FIO, ADR, D, SEM, OC); Адрес(ADR, TEL); R1:  N FIO; N ADR; N,D,SEM OC; Детерминанты: N,D,SEM; N; Возможные ключи: N,D,SEM. Вывод: Отношение R1 не находится в БКНФ. По правилу 6:  N FIO,ADR; N,D,SEM OC.  Отношение Результаты:  Детерминанты: N,D,SEM; Возможные ключи: N,D,SEM. Вывод: Данное отношение находится в БКНФ. Отношение Студент:  Детерминанты: N; Возможные ключи: N; Вывод: данное отношение находится в БКНФ. Отношение Адрес:  Детерминанты: ADR, TEL; Возможные ключи: ADR, TEL. Вывод: Данное отношение находится в БКНФ. |