СУБД MS Access 2003 (960526), страница 6
Текст из файла (страница 6)
22).Таблица 20. ПреподавательФамилияКПТелефонИвановАндреевСусловРепинП1П2ПЗП4234566233367226785274564М!Таблица 21. ДисциплинаКДД1Д2дзД4Число часовДисциплинаПОИСМатематикаФизикаИнформатика48563468Таблица 22. ЧитаетКДКПП1ПЗП4Д1дзД4Пример 12. Постановка задачи. Предметная область: профессиональные рыболовные проводники Мещерских озер и озера, которые они обслуживают. Разрешается закрепление не более одногопроводника за одним озером, и по соглашению между проводниками каждый из них обслуживает только одно озеро. Таким образом, степень связи 1:1.Атрибуты-, имя проводника, код проводника, номер телефона,ежедневная плата, максимально допустимое число людей в групперыбаков (размер), название озера, код озера, рыболовный рейтинги основной вид вылавливаемой в озере рыбы.Решение задачи.
Предположения при создании £7?-диаграммы:все проводники имеют работу, некоторые озера проводникамине обслуживаются. Следовательно, класс принадлежности сущности Проводник обязательный, а сущности Озеро необязательный.Тема 2. Получение отношений из диаграммы Е/?-типа33Проводник обслуживает Озеро (рис. 16-18 и табл.
23-24).П1 L>\fLJ 01\Jis^r-П2 [ )S—Ч—^\{ПЗ I J-) 02О03Рис. 16. £У?-диаграмма для экземпляров сущностей•1Проводниккпко\^Рис. 17. ЕЯ-диаграмма для классов сущностейТаблица 23. Проводник (КП. ..., КО)КПФамилияТелефонПлатаРазмерКОТаблица 24. Озеро (КО, ...)КОНаименованиеРейтингФамилияРис. 18. Диаграмма ФЗВид34Проектирование баз данных. СУБД MS AccessИз анализа диаграмм можно заключить, что оба отношения находятся в НФБК. Детерминанты КП и КО являются ключевымиатрибутами.Контрольные вопросы1. Сколько таблиц необходимо, если степень связи 1:1 и класспринадлежности обеих сущностей обязательный?2.
Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи 1:1и класс принадлежности обеих сущностей обязательный?3. Сколько таблиц необходимо, если степень связи 1:1 и класспринадлежности одной сущности обязательный, а другой - необязательный?4. Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи 1:1и класс принадлежности одной сущности обязательный, а другой - необязательный?5.
Сколько таблиц необходимо, если степень связи 1:1 и класспринадлежности обеих сущностей необязательный?6. Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи 1:1и класс принадлежности обеих сущностей необязательный?Задание 2Для случаев, описанных ниже, составьте £7?-диаграммуи по правилам 1-3 перейдите от нее к предварительным отношениям, для каждого отношения укажите первичный ключ.1. На приеме у врача ставится диагноз пациенту.2.
На приеме врач может выдать пациенту больничный лист.3. Должность требует образования.4. Личность прописана по адресу.5. Личность проживает не в месте прописки.6. Квартира имеет адрес.7. Личность имеет опекуна.8. Врач поликлиники обслуживает участок.9. Квартира имеет владельца.10. Пациент имеет медицинскую карту.Тема 2. Получение отношений из диаграммы £Я-типа352. Предварительные отношения для бинарныхсвязей 1:NВ такой ситуации используются два правила. Каждое из нихопределяется классом принадлежности УУ-связной сущности, класспринадлежности 1-связной сущности на результат не влияет. Нижеприводятся правила вместе с рисунками и таблицами, иллюстрирующими их применение.Правило 4.
Если степень бинарной связи равна 1:N и класспринадлежности /V-связной сущности является обязательным,то достаточным является использование двух отношений, по одному на каждую сущность, при условии, что ключ каждой сущности служит в качестве первичного ключа для соответствующегоотношения. Дополнительно ключ 1-связной сущности долженбыть добавлен как атрибут в отношение, отводимое Л'-связнойсущности (рис. 19, табл. 25, 26).ПреподавательДисциплинаN/КПКДРис. 19. ER-диаграмма к правилу 4Таблица 25. ПреподавательшкпП2ПЗП4ТелефонФамилияИванов234566Андреев233367Суслов226785Репин274564Таблица 26. ДисциплинакдДисциплинаД148Д2МатематикаДЗФизикаИнформатика563468Д4КПЧисло часовпоистП2шП416Проектирование баз данных.
СУБД MS AccessПравило 5. Если степень бинарной связи равна J:N и класспринадлежности /У-связной сущности является необязательным,то необходимо формирование трех отношений: по одному для каждой сущности и одно отношение для связи (табл. 27-29). Причемключ каждой сущности используется в качестве первичного ключасоответствующего отношения. Отношение связи должно иметьв числе своих атрибутов ключи каждой сущности.Таблица 27.
ПреподавательФамилияА77Телефон234566233367226785274564ИвановАндреевСусловРепинШП2ПЗП4Таблица 28. ДисциплинакдД1поисД2МатематикаФизикаИнформатикаДЗД4Число часовДисциплина48563468Таблица 29. ЧитаеткдКПШД1П2П1П2Д2ДЗД4Контрольные вопросы1. Сколько таблиц необходимо, если степень связи «один ко многим» и класс принадлежности обеих сущностей обязательный?2.
Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи«один ко многим» и класс принадлежности обеих сущностейобязательный?Тема 2. Получение отношений из диаграммы £У?-типа373. Сколько таблиц необходимо, если степень связи «один ко многим» и класс принадлежности односвязноЙ сущности обязательный, а /V-связной - необязательный?4. Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи«один ко многим» и класс принадлежности односвязноЙ сущности обязательный, а Л'-связной - необязательный?5. Сколько таблиц необходимо, если степень связи «один ко многим» и класс принадлежности обеих сущностей необязательный?6.
Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи«один ко многим» и класс принадлежности обеих сущностейнеобязательный?7. Сколько таблиц необходимо, если степень связи «один ко многим» и класс принадлежности односвязноЙ сущности необязательный, а /V-связной - обязательный?8.
Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи«один ко многим» и класс принадлежности односвязноЙ сущности необязательный, а Л^-связной - обязательный?Задание 3Для случаев, описанных ниже, составьте £7?-диаграммуи по правилам 4-5 перейдите от нее к предварительным отношениям, для каждого отношения укажите первичный ключ.1. Сотрудник имеет образование.2. Клиент делает заказ.3. Пациент имеет льготы.4.
Адрес относится к участку в поликлинике.5. Сотрудник получает взыскание.6. Сотрудник имеет гражданство (гражданин страны).7. Сотрудник имеет документ, удостоверяющий личность.8. Квартира имеет владельца.Проектирование баз данных. СУБД MS Access389. Личность прописана в квартире.10. Квартира имеет варианты обмена квартиры.11. Житель города проходит обследование в поликлинике.12. Карта обследования включает анализы.3. Предварительные отношения для бинарныхсвязей степени N:MПравило 6. Если степень бинарной связи равна M:N, то дляхранения данных необходимо три отношения: по одному для каждой сущности и одно отношение для связи (табл. 30-32).
Причемключ каждой сущности используется в качестве первичного ключасоответствующего отношения. Отношение связи должно иметьв числе своих атрибутов ключи каждой сущности.Таблица 30. ПреподавателькпшТелефонФамилияИвановАндреевСусловРепинП2пзП4234566233367226785274564Таблица 31. ДисциплинакдДисциплинаД1поисД2МатематикаФизикаИнформатикаДЗД4Число часов48563468Таблица 32. ЧитаеткдКПшД1П2ПЗП4Д2ДЗД4Тема 2. Получение отношений из диаграммы ЕЯ-типа393.1. Пример проектированияРассмотрим задачу о рыболовных проводниках.
Проводникиобеспечивают группам рыбаков рыбалку на озерах. Пусть верныследующие предположения: сразу несколькими проводникамиможет обслуживаться одно озеро, но каждый проводник обслуживает только одно озеро. Рыбаки, нанимающие проводников, интересуются видами рыб, которые водятся в озерах, самыми крупными экземплярами каждого вида, выловленными в регионе в текущем сезоне, и типом лучшей наживки для ловли каждого видарыбы в регионе (см. рис.
21).Атрибуты: код проводника (КП) - уникален для каждого проводника; имя проводника (Фамилия); номер телефона (Телефон);плата за день (Плата); название озера (Название); максимально допустимое число людей в группе рыбаков (Размер); рыболовныйрейтинг каждого озера (Рейтинг); основные виды рыб в каждомозере (Название); по каждому виду рыб вес самого большого экземпляра (Vmax), пойманного в текущем сезоне, и лучшая наживка для каждого вида рыб (Наживка).Проводник обслуживает Озеро, в нем водится Рыба (рис. 20,21, табл. 33-36).ООПроводник-NРис.
20. ЕЯ-диаграмма к примеруПроектирование баз данных. СУБД MS AccessРис. 21. Функциональные зависимости к примеруТаблица 33. ПроводниккпФамилияТелефонПлатаРазмерКО! ПТаблица 34. ОзероКОНазваниеРейтингКОТаблица 35. РыбаКРНазваниеНаживкаVmaxТаблица 36. ВодитсяКОКР<КО. КР>Анализ ФЗ показывает, что все детерминанты являются возможными ключами; следовательно, отношения находятся в НФБК.Тема 2. Получение отношений из диаграммы ER-типа41Контрольные вопросыКак скажется на решении изменение следующих условий:1. Проводник может обслуживать несколько озер.2. Требуется хранить информацию обо всех наживках, которыеможно использовать для данного вида рыбы?3.
Сколько таблиц необходимо, если степень связи «многиеко многим» и класс принадлежности обеих сущностей обязательный?4. Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи«многие ко многим» и класс принадлежности обеих сущностейобязательный?5. Сколько таблиц необходимо, если степень связи «многиеко многим» и класс принадлежности обеих сущностей необязательный?6. Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи«многие ко многим» и класс принадлежности обеих сущностейнеобязательный?7. Сколько таблиц необходимо, если степень связи «многиеко многим» и класс принадлежности одной сущности обязательный, а другой - необязательный?8.
Какие атрибуты принимаются за ключевые в предварительныхотношениях, соответствующих случаю, когда степень связи«многие ко многим» и класс принадлежности одной сущностиобязательный, а другой - необязательный?Задание 4Для случаев, описанных ниже, составьте Е7?-диа1раммуи по правилу 6 перейдите от нее к предварительным отношениям,для каждого отношения укажите первичный ключ.1.
Врач принимает пациента.2. Товар обладает характеристиками.3. Товар входит в поставку.4. Лекарство имеется в аптеке.12Проектирование баз данных. СУБД MS Access5. Троллейбус обслуживает маршрут.6. Изделие продается на торговой точке.7. Маршрут имеет остановки.8. Читатель берет книги,9. В блюдо входят продукты.10. Заявка выполняется рабочими.4. Связи более высокого порядкаЗадача об озерах. Предположим, что люди, нанимая проводника, хотят знать, какой вид рыбы предпочитает ловить проводник. Если Иванов обслуживает озеро О\ и в нем водятся рыбыР\, РЪ РЗ-, т° это еще не значит, что он предпочитает один из этихвидов рыб.