|
Программирование >> Реляционные базы данных
Из зтой диаграммы получаются три отношения со схемами: Stuclios(name, addr) Crews(number, studioName) Unit-of(number, studioName. name) Первое отношение, Sitie/ios, строится прямо из множества сущностей с тем же именем, второе. Crews, получается из слабого множесгва сущ110сте11 Сгет. Атрибуты этого отношения - это ключевые атрибуты множества Crews; если бы у Crews были неключевые атрибуты, они тоже были бы введены в схему отношения. Здесь StudioName указывается в качестве атрибута отношения Crews, coorjcTCTnyiomero ятрибут name в множестве сущностей Studios. Третье отношение, Unit-of, получается из связи с тем же именем. Как всегда, E/R-связи представляются в реляционной модели с помощью отношения, схема которого содержит ключевые атрибуты связанных множеств сущностей В данном случае Unit-of имеет атрибуты number, studioName (ключ для слабого множества сущносгей Crews) и name (ключ для множества Studios). Поскольку Vmi-of-это связь типа миогие-к-одному , studioName для любой студии совпадает со значением ее атри6>та name. Пусть, например, Disney crew #3 - одна из съемочных фупп сгуллн Disney. Тогда множество связей для Unit-of включает в себя пару (Disney crew#3, Disney), из которой получается кортеж (3, Disney, Disney). В результате, смешав атрибуты studioName и name для Unit-of, получим более простую схему: Unjf-of(number, name). Но тогда можно обойтись вообще без отношения Unit-of, так как его атрибуты являются подмножеством атрибутов отношения Crews. □ Пример 3.16. Рассмотрим слабое множество сущностей Contracts из примера 2.31 и рис. 2.28 в разделе 2.6.1. Диаррамма из этого примера воспроизведена на рис. 3.19. Contracts (filmType ( (address Рис. 3.19. Gio6oe множество сущносгей Contracts 3.3-4 Упражнения к разделу 3.3 Упрожнение 3.3.1. Преобразуйте E/R-диаграмму, представленную на рмс 3.20, в реляционную БД seat toCust Bookings toPlt Customers Flights (name address 3 Ц gucgjjjjo. отщщрясв tyeitko aircraft Сема отношения для множества Contracts: Contracts(starName. studioName. title, year, salary) .Лтрибута\ги здесь яяляются соответствующим образом переименованные ключи для множеств Sum и Studios, два атрибута нз ключа для Movies и aTpn6jfT solaiy, принадлежащий множеству Coniracis. Опюшения для связей Stor-of, Swdio-of и Movie of не iiocTpoe}U>r. Каждое нз этих отношений имело бы схему, являющуюся собственным подмножеством приведенной выше схемы для Contracts. Заметим, что полученное отношение являегся точно таким же, какое можно было бы 1юлучнть из Е/Я-диаграммы. показанной на рис. 2.13. На ней контракт трактуется как трехместная связь между кинозвездами, фильмами и студиями с агрибутом гонорара, приписагнюго множеству Contracts. □ То, что мы наблюдали на примерах 3.15 и 3.16 (для связи в двойном ромбе отношение не требуется), универсалыю для слабых множеств сущностей. Схема отношения для слабого множества сущностей Е включает в себя схему отношения, построенного из любой заключенной в двойной ромб связи R типа многие-к-ofliio.vo , соединяющей £с одним из множеств, помогающих составить ключ для Е. Дело и том, что отношение ллч £ содержит ключевые атрибуты для £, которые объединяют все Ю1ючецые атрибуты двух множеств, связанных посредством R. Поэтому для слабых множеств сущностей верны а1едующне правила: Если Е~ слабое множество сущностей, для него нужно строить отношение, схема которого состоит нз всех ключевых атрибутов для Я, в том числе атрибутов, являющихся ключами вспомогательных множеств, соединенных с Е связью типа многие-к-одному . Ие нужно строить ожошение для любой связи типа многие-к-одному .между слабым множеством супностсй и другим множеством сущностей при условии, что данная связь заключена е двойной ромб и помогает сформировать ключ для слабого множества сущностей. (Jiame (yeeuncJ Близнец Рие. 3.21. e/R-qmorpo/vwiq, относйщоясп к нороблям-близнецом * Мпрожненис 3.3.2. E/R-диаграмма на рис. 3.21 относится к кораблям. Если корабли построены по одному проекту, они называются шпнецоми . Преобразуйте эту диаграмму в схему рсляпионной БД. Упражнение 3.3.3. Преобразуйте в схемы реляционной БД следующие E/R-диатраммы: a) диаграмму на рис. 2.28; b) результат выполнения упражнения 2.6.1; c) результат выполнения упражнения 2.6.4(a); d) результат выполнения упражнения 2.6.4(b). 3.4 Преобразование структур подклассов в отношения Понятие подкласса в объектно-ориентированных и E/R-моделях трактуется не одинаково. Напомним, в чем разница. В ODL объект принадлежит только одному классу и наследует свойства всех своих надклассов, но технически не является их членом. В E/R модели объект может быть представлен суш1юстями, принадлежащими нескольким множествам, находящимся в связи isa. Таким образом, связанные сущности формируют объект и прадают ему свойства: атрибуты и связи. Именно поэтому применяются различные методы построения отношении, пред-ставляю]цих иерархию классов. Рассмотрим две различные точки зрения, определяющие разные стратегии разработки схемы реляционной БД. Следует учесть, что ни ODL, ни E/R-модели сами по себе не вынуждают применять тот или иной подход; по желанию .можно выбрать методику, предназначенную лля другой модели. 3.4-1 Реляционное представление подклассов ODL Рассмотрим сначала технику перевода иерархии подклассов ODL в реляционные схемы в соответствии со следующими принципами КаждьиТ подкласс имеет собственное отношение. В этом отношении представлены все свойства данного подкласса, включая все С!юйства, которые он наследует.
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0.001
При копировании материалов приветствуются ссылки. |