- •4.2. Основные понятия рбд (отношение, сущность, атрибут, связь, ключ, домен, примеры)
- •4.3. Нормализация отношений (1, 2, 3 нф; нфбк; фз; потенциальный ключ; детерминант; пример)
- •4.4. Целостность реляционных данных. Преимущества и недостатки рмд
- •4.5. Реляционные операции. Операции над отношениями
- •Контрольные вопросы
- •4.6. Постановка задачи проектирования рбд с использованием метода «сущность-связь» (сущность, связь, атрибут, er-диаграмма)
- •4.7. Построение er-диаграммы предметной области (er-диаграммы экземпляров и классов; пример)
- •4.8. Бинарных связи и классы принадлежности. Случай 1 – связь 1:1, кп обеих сущностей обязательный
- •4.9. Примеры er-диаграмм (связь 1:1): случай 2 – кп сущностей обязательный и необязательный; случай 3 – кп обеих сущностей необязательный
- •4.10. Примеры er-диаграмм: случай 4 – связь 1:n, кп сущностей необязательный; случай 5 – связь n:1, кп сущностей обязательный; случай 6 – связь m:n, кп сущностей необязательный
- •Контрольные вопросы
- •4.11. Получение предварительных отношений из er-диаграмм для бинарных связей 1:1 (шаги использования метода; правило 1 – кп сущностей обязательный)
- •4.12. Получение предварительных отношений из er-диаграмм для бинарных связей 1:1 (правило 2 – кп сущностей обязательный и необязательный; правило 3 – кп обеих сущностей необязательный)
- •4.13. Пример проекта бд «Проводники и озера» (бинарная связь 1:1; кп сущностей обязательный и необязательный; er-диаграммы для экземпляров и классов; диаграмма фз; анализ на нфбк)
- •Контрольные вопросы
- •4.14. Получение предварительных отношений из er-диаграмм для бинарных связей 1:n (правило 4 – кп n-связной сущности обязательный; правило 5 – кп n-связной сущности необязательный)
- •Отношение «Читает»
- •Контрольные вопросы
- •4.15. Получение предварительных отношений из er-диаграмм для
- •4.16. Пример проектирования бд с тройственной связью («Проводник обслуживает Озеро, в нем водится Рыба»; постановка задачи; атрибуты; er-диаграммы; диаграммы фз; отношения)
- •Контрольные вопросы
Отношение «Читает»
КП |
кд |
П1 |
Д1 |
П2 |
Д2 |
П1 |
ДЗ |
П2 |
Д4 |
Контрольные вопросы
Сколько таблиц необходимо, если степень связи 1:М и КП обеих сущностей обязательный?
Какие атрибуты принимаются за ключевые в предварительных отношениях, соответствующих случаю, когда степень связи 1:М и КП обеих сущностей обязательный?
3. Сколько таблиц необходимо, если степень связи 1:N и КП односвязной сущности обязательный, а N-связной - необязательный?
4. Какие атрибуты принимаются за ключевые в предварительных отношениях, соответствующих случаю, когда степень связи 1:N и КП односвязной сущности обязательный, а N -связной - необязательный?
5. Сколько таблиц необходимо, если степень связи 1:N и КП обеих сущностей необязательный?
6. Какие атрибуты принимаются за ключевые в предварительных отношениях, соответствующих случаю, когда степень связи 1:N и КП обеих сущностей необязательный?
7. Сколько таблиц необходимо, если степень связи 1:N и КП односвязной сущности необязательный, а N-связной - обязательный?
8. Какие атрибуты принимаются за ключевые в предварительных отношениях, соответствующих случаю, когда степень связи 1:N и КП односвязной сущности необязательный, а N -связной - обязательный?
4.15. Получение предварительных отношений из er-диаграмм для
бинарных связей M:N (правило 6)
Правило 6. Если степень бинарной связи равна M:N, то для хранения данных необходимо три отношения: по одному для каждой сущности и одно отношение для связи (табл. 4.23 – 4.25). Причем ключ каждой сущности используется в качестве первичного ключа соответствующего отношения. Отношение связи должно иметь в числе своих атрибутов ключи каждой сущности.
Таблица 4.23
Отношение «Преподаватель»
КП |
Фамилия |
Телефон |
П1 |
Иванов |
234566 |
П2 |
Андреев |
233367 |
ПЗ |
Суслов |
226785 |
П4 |
Репин |
274564 |
Таблица 4.24
Отношение «Дисциплина»
кд |
Дисциплина |
Число часов |
Д1 |
ПОИС |
48 |
Д2 |
Математика |
56 |
ДЗ |
Физика |
34 |
Д4 |
Информатика |
68 |
Таблица 4.25
Отношение «Читает»
КП |
КД |
П1 |
Д1 |
П2 |
Д2 |
ПЗ |
ДЗ |
П4 |
Д4 |
4.16. Пример проектирования бд с тройственной связью («Проводник обслуживает Озеро, в нем водится Рыба»; постановка задачи; атрибуты; er-диаграммы; диаграммы фз; отношения)
Рассмотрим задачу о рыболовных проводниках. Проводники обеспечивают рыбакам рыбалку на озерах. Пусть верны предположения: сразу несколькими проводниками может обслуживаться одно озеро, но каждый проводник обслуживает только одно озеро. Рыбаки, нанимающие проводников, интересуются видами рыб, которые водятся в озерах, самыми крупными экземплярами каждого вида, выловленными в озере, и типом наживки для ловли каждого вида рыбы в озере.
Атрибуты: код проводника (КП) - уникален для каждого проводника; имя проводника (Фамилия); номер телефона (Телефон); плата за день (Плата); название озера (Название); максимальное число людей в группе рыбаков (Размер); рыболовный рейтинг каждого озера (Рейтинг); основные виды рыб в каждом опере (Название); по каждому виду рыб вес самого большого экземпляра (Vmax) и лучшая наживка для каждого вида рыб (Наживка).
Рисунки и таблицы для тройственной связи «Проводник обслуживает Озеро, в нем водится Рыба» представлены на рис. 4.18, 4.19 и в табл. 4.26 – 4.29).
Рис. 4.18. ER-диаграмма к примеру
Рис. 4.19. Функциональные зависимости к примеру
Таблица 4.26
Отношение «Проводник»
КП |
Фамилия |
Телефон |
Плата |
Размер |
КО |
|
|
|
|
|
|
КП
Таблица 4.27
Отношение «Озеро»
КО |
Название |
Рейтинг |
|
|
|
КО
Таблица 4.28
Отношение «Рыба»
КР |
Название |
Vmax |
Наживка |
|
|
|
|
КР
Таблица 4.29
Водится
КО |
КР |
|
|
<KО, КР>
Анализ ФЗ показывает, что все детерминанты являются возможными ключами; следовательно, отношения находятся в НФБК.