Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Використання ролей

Правило 7

У випадку багатостороннього зв’язку (N-стороннього) необхідно використовувати N+1 відношення, по одному на кожну сутність, причому ключами в цих відношеннях будуть ключі відповідних сутностей. В останньому відношенні буде зберігатись інформація про зв’язки. В нього включаються ключові атрибути всіх сутностей охвачених N-стороннім зв’язком. Ключ в даному відношенні вибирається після аналізу всіх атрибутів.

 

Приклад проектування з використанням зв’язків більш високого порядку

Якщо примінити номер 7 до розглянутого на рисунку 7.51 прикладу, то ми отримаємо наступні відношення:

Провідник (Пр, …)

Озеро (Озеро, …)

Риба (Вид, …)

П_О_Р (Пр, Озеро, Вид, …) – первинний ключ не може бути визначений до тих пір, поки не будуть розгляне ні всі інші атрибути.

 

Якщо взяти атрибути з прикладу, то П_О_Р буде виглядати: П_О_Р (Пр, Н_озера, Вид), тобто в дане відношення не будуть додані додаткові атрибути.

Якщо кожний провідник віддає перевагу ловити в кожному озері тільки один вид риби, то П_О_Р (Пр, Озеро, Вид). якщо провідник може вказати декілька видів, яким він віддає перевагу, для кожного озера, то П_О_Р (Пр, Озеро, Вид).

Якщо провідник міг би вказати сезон, тоді він віддає перевагу даному виду риби в кожному озері, то тоді набір атрибутів <Пр, Озеро, Вид> не може бути первинним ключем, так як можливі були б подібні кортежі:

<Іванов, Ладога, Лящ, Осінь> Іванов віддає перевагу ловити восени в Ладозі ляща.

<Іванов, Ладога, Лящ, Літо> Іванов віддає перевагу ловити влітку в Ладозі ляща.

 

В деяких ситуація одних сутностей і зв’язків виявляється недостатньо для повноцінного моделювання предметної області. Одна з таких ситуацій виникає тоді, коли екземпляри деякої сутності повинні грати різні ролі в діяльності підприємства. В якості прикладу допустимо, що для невеликого підприємства поставника автомобілів необхідно зберігати інформацію про персонал на підприємстві. Розрізняють дві категорії службовців: Майстрів та Збирачів. Майстри отримують фіксований оклад, в той час як у збирачів погодинна оплата. Майстри керують процесом збірки. В кожного майстра в підлеглих від 1 до N збірників. У кожного збирача повинен бути тільки один керівник. Визначимо атрибути, що представляють для нас інтерес:

С_пр - Прізвище службовця
Р_тел - Робочий телефон майстра
Д_тел - Домашній телефон службовця
Адр_сл - Адреса службовця
Т_ставка - Погодинна тарифна ставка збірника
Оклад - Місячний оклад майстра
Код_зб - Код збірника
Сф_ком - Сфера компетенції майстра

 

Побудуємо діаграму ER-типу зв’язку «Керує», що зв’язує дві сутності МАЙСТЕР і ЗБІРНИК:

Рис. 7.52 – Діаграма ER-типу зв’язку «Керує»

По діаграмі ER-типу зв’язку «Керує» зображеної на рисунку 7.52, формуємо відношення використовуючи правило 6.

Майстер (Таб_ном_майст, …)

Збірник (Таб_ном_збірн, Таб_ном_майст)

З цією моделлю зв’язана проблема. Вона виникає при розподіленні не ключових атрибутів по попереднім відношенням.

До відношення Майстер можна однозначно віднести: Р_тел, Оклад, Сф_ком.

До відношення Збірник можна однозначно віднести: Т_ставка, Код_зб.

Легко розподілити майже всі атрибути, крім С_пр, Д_тел та Адр_сл.

З атрибутами, які залишились можна зробити: розбити загальні атрибути на дві частини для Майстра та Збирача, тобто С_пр службовця – С_пр Майстра і С_пр Збирача.

Рис. 7.53 – Розбивка загальних атрибутів С_пр, Д_тел і Адр на дві частини

Але кількість атрибутів збільшується, отже, виникне дублювання. Кращим рішенням даної ситуації є наступне:

· Всі Майстра і Збирачі розглядаються як службовці

· Майстра і Збирачі це ті ролі, які може грати даний службовець (деякі службовці є Майстрами, інші збирачі).

· Службовець являє собою сутність, ключем якої є табельний номер службовця (ТНС), а екземплярами даної сутності можуть бути або майстра, або збирачі.

· Два рольових набору Майстер і Збирач з'єднуються зв'язком "Керує".

На малюнку 7.54 показано використання ролей для даного прикладу.

Рис. 7.54 – Діаграма ER-типу зв’язку «Керує» з використанням ролей

Стрілки йдуть від сутності Службовець до сутностям Майстер і Збирач, вказують на те, що сутність Службовець є вихідною, а сутності Майстер і Збирач тільки ролями.

 

<== предыдущая лекция | следующая лекция ==>
Правило 6 | Приклад проектування з використанням ролей
Поделиться с друзьями:


Дата добавления: 2014-01-11; Просмотров: 281; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.