Теория и практика построения баз данных (1088289), страница 57
Текст из файла (страница 57)
Объект С05ТОМБЕ (клиент) является составным объектом со связью 1;)х) и представлен на этом рисунке отношениями. Рис. 7.21. Подписка, смодолнрованная в виде двух объектов На рис. 7,22, а показано описание популярного готового продукта в упаковке. В то время как на рис.
7.20, а представлена старая форма без данных, на рис. 7.22, а изображен конкретньш экземпляр отчета с данными о рисовых хлопьях. Данный форлеат используется во всех отчетах о хлопьях фирмы Ке!1ойй. На рис. 7.22, о показан композитный объект, который может лежать в основе этого отчета. Мы говорим < может», поскольку существует много различных способов представления данного объекта. Кроме того, в ходе дальнейшего исследования мы можем обнаружить другис объекты, существование которых, если исходить из одного этого отчета, не очевидно. Например, рекомендация министерства сельского хозяйства США может быль самостоятельным семантическим объектом.
ммтяшон тмвомэйтюм инптююте тоевв«вмючттсют ЮЯПИСЭ Мя РАСИАГЮ 25 Ми СЮСЯМВ пв тю. РНОТЕТИ 26 62 смюснтснюе 25 э э 5 мт 65 66 ОИХЕЮ'ЕНОТ Э 5 55" ВООСМ 256 В ЭЭО в Рстммчм 25 ВМЭВ ° еясеит«се ОР мв. ысоммеювс оявт м«смям266 е.в РСАЭ ИЮТЕ2Н м ч ТАМ~И А ю ю ИЭТ«мм с 25 25 тмям» «Т Н ВМТАЧЭИ 26 5 Э5 Ю ЕМООМ 5 вюи 26 тэ ЧПАМ~Н О тс 22 мтмни в, Ю ЭЭ РСАЮ АСЮ ю ю РНОЕРНОЯИВ ° ТЭ МАОНЕ5МН 2 6 Оис 2 5 сом ют 2 МЕ Ю 5МНПВ Н ЭСМСМ М СМО НЭ М Мя И СМАЭЭПМХ "сс т явйтвтй 2 ст не»5 ютм »МИ«» Ет ЕВЯЕЮЕИТВ НЮЕ. ЭСОАЯ ВАТТ, СОНИ ВЧМ,Р ИМИ РИЧОНМО.
мтмюм ее мсн ч~тм«м с 2всечм МСОЮМТЕ АНС АЮСОЯВЭС АСЮЭ нмсиючсе ~яои мтАМ» в, мт. ЯЭООИ~ИЕ НЧСНССИАОЯЮВ ПАММ А ТРААМПАТЕТ МТАЮН В, 2»ЭЮРЫМИЭ. мтмми в, пмямм ичсноснчо»065 РСМС ОЮ, АНО ЧПАМ~Н 0 ТО иееР тмв сет'е тптеэн,Внт НМ ВЕЕИ *ОСЕО ТО ТНЕ МООЕИО Рис. 7.22. Представление отчета о выпускаемых хлопьях: а — отчет о продукте; б — диаграмма объекта СЕПЕАЫРП000СТ Для иллюстративных целей мы делаем различные предположения о группах йц1пеп1 (пищевая ценность) и 050АЕес0айуА((оеэ (рекомендованная министерством сельского хозяйства ежедневная норма).
Объект СЕЕЕАС-РЕ000СТ (хлопья) предполагает, что каждый элемент группы йи1пеп1 — калории, белки, углеводы, жиры, холестерин, натрий и калий — является необходимым в каждом экземпляре данного объекта. Мы, однако, нс предполагаем этого для группы 050АЕес0айуАйоа, поскольку должен существовать только один экземпляр этой группы.
Отчет на рис. 7.22, а имеет много интерпретаций и может моделироваться несколькими различными способами. При разработке реального проекта важно собрать как можно больше отчетов о друпгх выпускаемых хлопьях, пх составе и пищевой ценности. В результате анализа этих документов данный семантический обьект, скорее всего, будет дополнен какими-то новыми структурами. Примеры объектов, 267 юАБннетси куйте ймйск ссййестюй йстск МОТЕбЕИТ 266 Глава 7.
Проектирование баз данных в рамках объектной модели На рис. 7.23 показано реляционное представление объекта СЕнЕАС-РкОООСТ. Минимальное кардинальное число 7 указывается рядом с перпендикулярной чертой на линии связи, обозначающей обязательную связь. Внешние ключи были размещены так, как описывалось ранее для композитных объектов.
Рис. 7.23. Реляционное представление объекте СЕЙЕАИРЙОООСТ Акт о нарушении правил дорожного движения На рис. 7.24, а изображен бланк акта о нарушении правил дорожного лвижения, используемый в штате Вашингтон. Разработчик этого бланка дал нам важные подсказки относительно объектов, лежащих в основе этого бланка.
Обратите внимание на то, что бланк разделен на разделы с закругленными углами, означающими, что эти разделы относятся к разным объектам. 1<роме того, некоторые группы атрибутов имеют названия, что указывает нам на необходимость введенти групповых атрибутов. На рис. 7.24, б изображен один пз вариантов моделирования объектов, лежащих в основе акта о нарушении правил дорожного движения. Хотя мы не можем быть уверены в этом, изучив всего одну форму, есть определенные признаки, по которым можно сделать вывод, что водитель, транспортное средство и офицер лорожной полиции являются независимыми объектами.
Во-первых, данные, относящиеся к каждому из них, находятся в разных секциях бланка. Но более важно то, что каждый раздел содержит поля, которые несомненно являются идентифицирующими атрибутами чего-то еще, помимо уведомленти об исправлении (СОккЕСПОМ-МОТ(СЕ). Например, комбинация (ОпуегЫселзе, 5~а1е) (водительская лицензия, штат) идентифицирует водителя; ЧеЫс1еС1сепзе (лицензия транспортного средства), 51а~е (штат) и Ч1М (идентификационный номер транспортного средства) идентифицируют зарегистрированный автомобиль; наконец, Регзоппе1Мцшбег (личный номер) идентифицирует офицера дорожной полиции.
Эти ключевые поля определенно являются детерминантами, поэтому для каждого из них был введен свой объект. Реляционное представление этих диаграмм показано па рис. 7.25. б Рис. 7.24. Уведомление об исправлении нарушения: а — образец бланка; б — дивгремме объекте СОПЯЕСТЮМ-НОТ!СЕ Вопросы > группы, 269 нам>в ия>п с«а Вопросы! группы ав>кае ьсапи Зь>а басс уш Резюме 266 Глава 7.
Проектирование баз данных в рамках объектной модели ъ>я вв> ььв мсс«м о>> Ва>а ъссяи йяваоз>пщ Ва>а зап Впь>а>а наяи и»ох е>м тм> в па е«исс с«аса вввпсе ояввп оп> нй>пя> мюпя»Мяс всьев>кв>и эаи пввянсн ыв> ин Рис. 7.25н Реляционнов представление объекте СОПЯЕСТ>ОК-мОТ>СЕ Способ преобразования семантических объектов в отношения зависит от типа объекта.
Простые объекты представляются одним отношением. Необъектныс атрибуты выступают в качестве атрибутов этого отношения. Для представления композитных объектов требуется два нли более отношений. Одно из отношений содержит однозпачныс атрибуты объекта. Остальные отношения содержат простые или групповые многозначные атрибуты, для кажлого из которых создается одно отношение.
Клк>ч отношения, представляющего многозначньш атрибут, — это всегда композитпый кчк>ч, который состоит из ключа объекта и идентификатора композитной группы, имеющейся в этом обьекте. Для представления составного объекта требуется по крайней мере два объекта. Каждое отношение имеет свой собственный ключ, отличаюшийся от других, Есть четыре типа составных объектов, различающихся по видам связи — «один к одному», «один ко многим», «многие к одному» и «многие ко многим». Чтобы представить этп типы, необходимо создать соответствующие внешннс ключи.
Для связей «один к одному» ключ любой из таблиц можно поместить в качестве внешнего ключа в другую таблицу Для связей «одни ко многим» и «многие к одному» ключ родительского отношения помешается в дочернее отношение. Наконец, для связей «многпе ко мноп>м» создается таблица пересечения, в которую помещаются ключи обоих отношешш. Гибридные объекты представля>отся путем создания таблицы для многозначного группового атрибута композитного объекта и помегценпя в эту таблицу ключа отношения, представлякяцего некомпозитный обьект. Четыре примера гибридных объектов представлены в табл.
7.1. Для представления ассоциативных объектов требуется по крайней мере три отноц>ения — по одному на каждый из объектов, участвующих в связи. Каждое отношение имеет свой собственный ключ, а отношение, представляюгцее ассоциативньш объект. содержит в качестве внешних ключей ключи двух других объектов, Объекты вила родитель/подтип представляк>тся одним отношением для базового объекта и одним отношением для каждого из подтипов. Как правило, ключ у нсех отношений один и тот же. Иногда в родительское отношение помещается »дснтцфицируюший атрибут, который указывает тип объекта. Для объектов вида архетип/версия создается одно отношение, представляюн>се архетип, и одно отношение, представляющее версию. Ключ отношения, представляющегоо версию, всегда содержит ключ архетипа.
1. Приведите пример простого объекта, отличный от того, который дан в тексте. Покажите, как представить этот обьект с помощью отношения. 2. Приведите пример композитного объекта, отличный от того, который дан в тексте. Покажите, как представить этот объект с помошью отношений. 3. Приведите пример составного объекта со связью вида 1;1, отличный от того, который дан в тексте. Покажите, как представить этот объект с помощью отношений.
4. Приведите пример составного объекта со связью вида 1:Х, отличный от того, который дан в тексте. Покажите, как представить этот объект с помощью отношений, 5. Приведите пример составного объекта со связью вида М;1, отличный от того, который дан в тексте. Покажите, как представить этот объект с помошью отношений б. Приведите пример составного объекта со связью вида М:Х, отличный от > того, который дан в тексте. Покажите, как представить этот объект с помощью отношений.
7. Приведите пример гибридного объекта первого рода (см, табл 7.1). Пока- > жите, как представить этот обьект с помогцью отношений. 8. Приведите пример гибридного объекта второго рода (см. табл. 7.1). Пока- г жите, как представить этот объект с помощью отношений. 9. Приведите пример ассоциативного объекта и связанных с ппм объектов, отличный от того, который дан в тексте. Покажите, как представить эти объекты с цол>ошью отношений. Пусть при этом ассоциативный объект имеет свой собственный идентификатор.