Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Konspekt_lektsiy_BD_amp_amp_SD

.pdf
Скачиваний:
29
Добавлен:
10.02.2016
Размер:
1.41 Mб
Скачать

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

31

 

 

тиною відповідно.

Якщо виконується зворотне співвідношення, то множини атрибутів є взаємозалежни-

ми: X Y . Приклад:

R:

A C, B C,{A, B} C, B A,{B,C} A

S:

D E

Функціональна залежність X Y називається повною, якщо атрибут Y функціонально залежить від множини X і не залежить від будь-якої його підмножини.

Функціональна залежність X Z називається транзитивною, якщо існує такий атрибут Y, що є функціональні залежності X Y і Y Z , і відсутня функціональна залежність Z X . (При відсутності останньої вимоги ми мали б „нецікаві“ транзитивні залежності в будь-якому відношенні, яке володіє декількома ключами).

На сьогоднішній день розроблено 5 нормальних форм — 1НФ - 5НФ, що накладають на відношення зростаючі за жорсткістю обмеження. У теорії реляційних баз даних зазвичай говориться, що ці форми формують таку послідовність:

нормалізація даних = перша нормальна форма (1НФ);

друга нормальна форма (2НФ);

третя нормальна форма (3НФ);

нормальна форма Бойса-Кодда (НФБК) як модифікація попередньої;

четверта нормальна форма (4НФ);

п’ята нормальна форма, або проекційно-сполучна нормальна форма (5НФ або ПСНФ). Основні властивості нормальних форм:

кожна наступна нормальна форма в деякому змісті краще попередньої;

при переході до наступної нормальної форми властивості попередніх нормальних форм зберігаються.

Оскільки вимога першої нормальної форми є базовою вимогою класичної реляційної моделі даних, ми будемо вважати, що вихідний набір відношень уже відповідає цій вимозі

(див. стор. 29).

Друга нормальна форма

Відношення R знаходиться в другій нормальній формі (2НФ) в тому і тільки в тому випадку, коли знаходиться в 1НФ, і кожен неключовий атрибут повно залежить від первинного ключа відношення R.

У цьому визначенні передбачається, що у відношенні існує єдиний потенційний ключ, який, відповідно, є первинним.

Якщо допустити наявність декількох потенційних ключів, то визначення набуде такого вигляду:

Відношення R знаходиться в другій нормальній формі (2НФ) в тому і тільки в тому випадку, коли воно знаходиться в 1НФ, і кожен неключовий атрибут повно залежить від кожного потенційного ключа відношення R.

Розглянемо приклад відношення:

Науково-дослідний центр

 

Назва

Назва

Місце розташування

Науковий керівник

 

 

співробітника

лабораторії

проекту

(№ корпусу)

лабораторії

 

 

A

B

C

D

E

 

 

1

a

1

8

W

 

 

2

a

1

8

W

 

 

3

a

4

8

W

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

 

32

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

b

2

15

S

 

 

2

 

b

5

15

S

 

 

3

 

b

2

15

S

 

 

1

 

c

3

8

W

 

 

2

 

c

3

8

W

 

Первинний ключ цього відношення: {A, B}.

Деякі з функціональних залежностей:{A , B } C ; B E ; B D ; D E .

Видно, що хоча первинним ключем є складений ключ {A, B} (або {№ співробітника,

Назва лабораторії}), атрибути E (або Науковий Керівник Лабораторії) і D (або Місце роз-

ташування (№ корпусу)) функціонально залежать від частини первинного ключа, атрибута B. У результаті ми не зможемо вставити у відношення Науково-дослідний центр кортеж, що описує яку-небудь нову лабораторію, якщо не визначені проекти, які вона буде виконувати, та співробітники, притягнуті до їх виконання (первинний ключ не може містити невизначене значення). При видаленні кортежу ми не тільки руйнуємо зв’язок певного співробітника з даним проектом, але втрачаємо інформацію про те, що він працює в певному відділі. При переводі співробітника в інший відділ ми будемо змушені модифікувати всі кортежі, що описують цього співробітника, або одержимо неузгоджений результат. Такі неприємні явища називаються аномаліями схеми відношення або колізіями. Саме вони усуваються шляхом нормалізації.

Можна зробити наступну декомпозицію відношення Науково-дослідний центр на два відношення — Проекти і Штат.

Проекти(Назва

лабораторії,

Науковий

Керівник

Лабораторії,

 

 

 

 

 

 

 

 

Місце розташування (№ корпусу)).

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Проекти

 

 

 

 

 

Назва

Місце розташування

Науковий керівник

 

 

 

лабораторії

(№ корпусу)

лабораторії

 

 

 

 

B

 

 

D

E

 

 

 

 

a

 

 

8

W

 

 

 

 

b

 

 

15

S

 

 

 

 

c

 

 

8

W

 

Функціональні залежності цього відношення: B E;B D;D E .

Штат(№ співробітника, Назва лабораторії, Назва проекту).

Штат

Назва

Назва

співробітника

лабораторії

проекту

A

B

C

1

a

1

2

a

1

3

a

4

1

b

2

2

b

5

3

b

2

1

c

3

2

c

3

З функціональними залежностями: {A, B}C .

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

33

 

 

Кожне з цих двох відношень знаходиться в 2НФ, і в них усунуті відзначені вище аномалії (легко перевірити, що всі зазначені операції виконуються без проблем).

Третя нормальна форма

Відношення R знаходиться в третій нормальній формі (3НФ) в тому і тільки в тому випадку, якщо знаходиться в 2НФ, і не має неключових атрибутів, транзитивно залежних від якого-небудь потенційного ключа відношення R.

Розглянемо ще раз відношення Проекти, що знаходиться в 2НФ. Помітимо, що функціональна залежність B E є транзитивною; вона є наслідком функціональних залежностей BD і D E . Іншими словами, Місце розташування (№ корпусу) насправді є характе-

ристикою не лабораторії (Назви лабораторії), а Наукового Керівника Лабораторії, який там працює.

У результаті ми не зможемо занести в базу даних інформацію, наприклад про те, що науковий керівник F знаходиться в корпусі № 2, доти, поки в цьому корпусі не з’явиться лабораторія (первинний ключ не може містити невизначене значення). При видаленні кортежу, що описує наукового керівника лабораторії, ми позбавимося інформації про її місце розташування. Тобто у відношенні Проекти, як і раніше, існують аномалії. Їх можна усунути шляхом подальшої нормалізації.

Можна зробити декомпозицію відношення Проекти на два відношення — Керівники і Лабораторії:

Керівники(Науковий

керівник

лабораторії,

Місце

розташування

(№ корпусу

))

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Керівники

 

 

 

 

Науковий керівник

 

Місце розташування

 

 

 

лабораторії

 

(№ корпусу)

 

 

 

E

 

 

 

D

 

 

 

W

 

 

 

8

 

 

 

S

 

 

 

15

 

Функціональні залежності: D E .

Лабораторії(Назва лабораторії, Місце розташування (№ корпусу))

 

Лабораторії

Назва

 

Місце розташування

лабораторії

 

(№ корпусу)

B

 

D

a

 

8

b

 

15

c

 

8

Функціональні залежності: B D.

Кожне з цих двох відношень знаходиться в 3НФ і вільно від відзначених колізій.

Для переважної більшості систем досить привести відношення до 3НФ чи її модифіка-

ції — НФ Бойса-Кодда (НФБК), що забезпечує декомпозицію без втрат.

Тому зупинимося детальніше на цій формі.

Нормальна форма Бойса-Кодда

Під розкладанням або декомпозицією без втрат розуміється такий спосіб декомпозиції відношення, при якому вихідне відношення цілком і без надмірності відновлюється шляхом природного з’єднання отриманих відношень.

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

34

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

 

 

Відношення знаходяться в НФБК тоді і тільки тоді, коли кожен детермінант є потенційним ключем.

Алгоритм декомпозиції без втрат, що приводить відношення до НФБК, такий:

1.Визначається Ф3, що є причиною того, що відношення не знаходиться в НФБК.

2.Виконується проекція відношення на детермінант і залежну частину знайденої ФЗ.

3.Зі схеми вихідного відношення видаляються атрибути, що входять у залежну частину ФЗ.

4.Відношення, отримані в п. 2 і 3, і будуть результатом декомпозиції. Ці відношення перевіряються на відповідність НФБК, і, при необхідності, алгоритм повторюється.

Приклад. Розглянемо відношення R, ФЗ якого ми уже визначили вище. Випишемо дете-

рмінанти і потенційні ключі і визначимо, за якими елементами ці множини не збігаються. При цьому для наочності прикладу ми не будемо звертати увагу на властивість не надмірності потенційного ключа.

Детермінанти: A, B,{A, B},{B,C}

Потенційні ключі:

B,{A, B},{B,C}

Видно, що атрибут А є детермінантом, але не є потенційним ключем. Йому відповідає

ФЗ A C .

 

 

 

 

 

 

Виконаємо проекцію відношення R на атрибути А та С: R′′ = R[A,C]. З відношення R

видаляємо атрибут C: R′ = R[A, B].

 

 

 

 

 

 

 

 

 

 

 

 

 

A

В

 

А

С

 

 

x

1

 

x

a

 

R’

y

2

R"

y

a

 

z

3

z

a

 

 

w

4

 

w

b

 

 

w

5

 

 

 

 

 

w

6

 

 

 

 

А

В

Для перевірки того факту, що зроблено декомпозицію без

втрат, виконується природне з’єднання результуючих відношень,

 

 

що має дати початкове.

ФЗ від одного атрибута

У тому випадку, якщо ФЗ, що відповідають першому пунк-

 

 

 

 

 

 

ту алгоритму, декілька, то виникає проблема вибору ФЗ, залежна

Ачастина якої чи її підмножина є детермінантом іншої ФЗ.

С

Однією з методик вирішення проблеми є пошук „ланцюж-

В ФЗ від множини

ків ФЗ“ виду A B C з наступним використанням для де-

композиції крайньої правої ФЗ.

 

 

атрибутів

При використанні цієї методики ФЗ зручно представити на

 

Рис. 35. Приклади діаграм

діаграмі ФЗ (рис. 35).

 

 

ФЗ

Покажемо діаграму ФЗ відношення

 

 

R (рис. 36):

 

 

 

 

 

 

Виділити на цій діаграмі ланцюжок

А

С

ФЗ досить складно. Однак цю діаграму можна спростити, видаливши

 

 

з усієї множини ФЗ надлишкові ФЗ. Тобто залежності, що не несуть

 

 

інформації, яка не могла б бути отримана з інших ФЗ відношення.

В

 

Видалити надлишкові ФЗ можна, використовуючи два правила

 

виводу. Нехай W, X, Y, Z — правильні підмножини схеми відношен-

 

 

ня R, а позначення XY відповідає X Y .

Рис. 36. Діаграма ФЗ

1. Транзитивність. Якщо X Y і Y Z , то X Z , яка назива-

ється транзитивною залежністю. Причому, якщо всі три залеж-

відношення R1

 

 

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

 

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

35

 

 

 

ності входять у набір ФЗ відношення, то транзитивна залежність є надлишковою.

 

2. Доповнення:

 

а)

якщо X Y , то XZ Y ;

 

б)

якщо X Y , то XZ YZ .

 

 

Причому, додаткові залежності в обох випадках є надлишковими.

 

 

 

 

 

 

Повернемося до прикладу. Відповідно до правила доповнення виклю-

А

 

 

С

чаємо з набору ФЗ відношення R залежності {A, B} C і {B,C} A .

 

 

 

 

Отримаємо нову діаграму, на якій чітко видна транзитивна залежність

 

 

 

 

 

 

 

 

 

 

B C . Її ми також виключаємо з розгляду (рис. 37).

 

 

 

 

 

 

 

 

 

 

 

У результаті дістаємо ланцюжок ФЗ B A C , з якого беремо

В

 

 

 

крайню праву залежність для декомпозиції.

 

 

 

 

 

 

Наведені правила є двома з трьох правил виводу або аксіом Армст-

 

 

Рис. 37.

ронга.

 

 

Діаграма ФЗ

3.

Третє правило — рефлексивність: для будь-яких множин атрибутів X і

транзитивної

 

Y: XY X і XY Y .

залежності

 

Ця аксіома і кілька наступних правил виводу дозволяє спростити і

зменшити початковий набір ФЗ.

 

 

 

 

 

4.

Декомпозиція. Якщо X YZ , то X Y і X Z .

 

 

 

 

 

5.

Об’єднання. Якщо X Y і X Z , то X YZ .

 

 

 

 

 

6.

Композиція. Якщо X Y і Z W , то XZ YW .

 

 

 

 

 

Порушення вимог НФБК відбуваються вкрай рідко, оскільки це може трапитись тільки тоді, коли:

є два (чи більше) складних потенційних ключі;

ці потенційні ключі перекриваються, тобто ними разом використовується, принаймні, один загальний атрибут.

Хоча для більшості систем достатньо відношень в НФБК, іноді корисно продовжити

процес нормалізації.

! Зауваження.

Наприкінці цього розділу необхідно зазначити, що нормалізація спрощує процеси додавання, відновлення та видалення інформації, дозволяє уникнути надлишкових даних і зменшити обсяг пам’яті, потрібної для зберігання відношень. Проте завдяки збільшенню кількості таблиць та зв’язків між ними будь-яка нормалізація ускладнює процедури пошуку інформації. Коли обсяг даних досягає кількох гігабайт, це стає на перешкоді ефективного функціонування інформаційної системи. У цьому випадку розробники погоджуються на так звану процедуру денормалізації тих відношень, по даним яких найчастіше виконується пошук. Але якихось узагальнених чи стандартизованих процедур та алгоритмів денормалізації відношень на цей час не існує.

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

36

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

 

 

Формалізація зв’язків між відношеннями

У попередньому розділі розглянуто проектування СБД на рівні окремих сутностей (окремих відношень). Проте СБД, найчастіше, складається з множини сутностей, між якими існують певні зв’язки. Тому природним є питання, яким чином формалізувати (визначити) ці зв’язки в СБД. Тут також існує ряд правил, і для цього необхідно згадати, які існують типи зв’язків. Але до того визначимо ще ряд понять.

1.Іноді виникають ситуації, коли в якому-небудь кортежі відношення не існує значення

того чи іншого атрибута. Не „значення не відоме“ користувачу, а саме „значення не існує“ (на цей час чи взагалі) або „не може існувати“.. Наприклад: сутність Принтер:

Тип

Фірма

Тип чорнила

Ширина стрічки, мм

MP5350AI

Seikosha

24

Stylus Color 600

Epson

Quick Dry

При виникненні такої ситуації більшість реальних СУБД допускають використання так званих NULL- чи NIL-значень.

2.Нехай дане відношення R. Тоді зовнішній ключ К’ у відношенні R’ — це підмножина схеми відношення R’, така що:

а) існує відношення R" з потенційним ключем K";

б) для будь-якого кортежу відношення R’ значення К’ або є NULL-значенням, або збігається зі значенням K" деякого кортежу відношення R". Відношення R" називається

батьківським чи головним, R’ деталізованим чи підлеглим, а ключ K" батьків-

ським.

Уприкладі декомпозиції відношення R атрибут А у відношенні R" є потенційним та батьківським ключем, а у відношенні R’ — зовнішнім.

Зауваження. У більшості випадків при проектуванні СБД K" є первинним ключем відношення R".

Рекомендація. Треба, за можливістю, уникати використання NULL-значень. Наприклад, шляхом поділу сутності на супертип і підтипи.

Тепер розглянемо правила формалізації деяких типів зв’язку. Усі відношення представ-

лені в НФБК. Це необов’язкова вимога, тому що:

1)проектування за допомогою ФЗ може бути виконано і на заключних етапах розробки СБД;

2)схема відношення може бути настільки великою (на практиці більш 20 атрибутів), що це

істотно ускладнює визначення ФЗ і проектування за їхньою допомогою.

Друга ситуація початково вимагає представлення сутності у вигляді декількох відношень.

1.Зв’язок 1:1. Це єдиний тип зв’язку, що допускає два варіанти представлення. Якщо між двома сутностями існує безумовний зв’язок 1:1, то для їхнього представлення досить од-

ного відношення. Причому первинним ключем цього відношення може бути ідентифі-

катор кожної із сутностей. Якщо ж за умовами задачі або системи необхідно кожну сутність представити у вигляді окремого відношення, то для формалізації зв’язків

необхідно атрибути первинного ключа одного з відношень додати в схему іншого відношення як зовнішній ключ.

На ЕR-діаграмі це відіб’ється просто додаванням множини атрибутів до списку атрибутів другої сутності.

На ІМ, і в цьому її більша наочність, зовнішній ключ буде представлений допоміжними

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

37

 

 

атрибутами з обов’язковою вказівкою мітки зв’язку. Приклад R1 (рис. 18, рис. 38):

зав. кафедри

R45

кафедра

ПІП_зав.

назва

вч. звання

 

кільк. співроб.

вч. ступінь

 

 

ПІП_зав. (R45)

Рис. 38. Формалізація зв’язку 1:1

На ІМ MS Access, замість мітки зв’язку використовується її графічна інтерпретація: сама лінія зв’язку з’єднує відповідні атрибути зовнішнього та батьківського ключів. Приклад R1 в нотації MS Access (рис. 18, рис. 39):

Зав. кафедри

1

 

Кафедра

Прізвище

 

Назва

зав.

 

 

кільк.

 

 

Ім’я зав.

 

1

співроб.

 

По-батьк.

 

зав.

 

 

Прізвище

 

 

вч. звання

 

 

зав.

 

 

вч ступінь

 

 

 

Рис. 39. Формалізація зв’язку 1:1 в нотації MS Access

2.Зв’язок 1:1у. Якщо між сутностями встановлений зв’язок 1:1у, то

а) кожна сутність представляється окремим відношенням. Причому ID сутності стає

первинним ключем відповідного відношення.

б) ID сутності, що відповідає умовності зв’язку, додається як допоміжний атрибут (на ІМ ще й з міткою зв’язку) в іншу сутність і, відповідно, як зовнішній ключ у схему її відношення.

Приклад R4 (рис. 25, рис. 40):

студент

У R26

дипломний проект

ПІП_студ.

тема

 

 

 

ПІП_студ. (R26)

 

 

 

Рис. 40. Формалізація зв’язку 1у:1

До речі, допоміжний атрибут у цьому випадку буде одним з потенційних ключів цього ж відношення і може бути використаний для пошуку інформації.

3. Зв’язок 1у:1у. Для формалізації зв’язку цього типу необхідно використовувати

3 відношення: по одному для кожної сутності й одне для зв’язку. На ІМ останнє від-

ношення представляється асоціативним об’єктом (сутністю). Атрибутами цього відношення обов’язково будуть первинні ключі двох інших. Приклад R8 (рис. 26, рис. 41): При цьому типі зв’язку обидві множини атрибутів асоціативного об’єкта є потенційни-

ми ключами. Причому, якщо один з них вибирається як первинний ключ цього відношення, то другий автоматично вважається зовнішнім. Крім того, асоціативний об’єкт може мати і множину власних атрибутів.

4. Зв’язки 1:N і 1у:N. Для формалізації зв’язків типу 1:N не має значення, чи є зв’язок з боку однозв’язної сутності умовним чи безумовним.

Кожна сутність, яка бере участь у зв’язку типу 1:N чи 1у:N, представляється своїм відношенням. При цьому первинний ключ відношення, що відповідає однозв’язній сут-

ності, додається як зовнішній ключ у схему відношення N-зв’язної сутності.

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

38

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

 

 

Дисплей

 

R22

У

ЕПТ

тип дисплею

 

тип ЕПТ

фірма

У

 

 

діагональ

 

 

 

 

 

 

 

 

Використання

тип дисплею (R22) тип ЕПТ (R22)

Рис. 41. Формалізація зв’язку 1у:1у

Приклад R2 (рис. 21, рис. 42).

порт

R38

корабель

назва порту

назва корабля

країна

має

тип

 

водотоннажність

 

 

 

 

назва порту (R38)

 

 

 

Рис. 42. Формалізація зв’язку 1:N, 1у:N

Зрозуміло, що зовнішній ключ відношення N-зв’язної сутності не може бути потенційним ключем цієї сутності.

5.Зв’язки 1:Nу і 1у:Nу (рис. 27). Для визначення зв’язку 1:N, умовного з боку N-зв’язної сут-

ності, необхідно сформувати по одному відношенню для кожної сутності й одне від-

ношення для зв’язку, у схему відношення якого повинні бути включені первинні ключі відношень сутностей.

Приклад R9 (рис. 43).

Кафедра

назва. каф кільк. викл.

Лабораторія R81 У назва лаб.

спеціалізація

Підлягання

назва каф. (R81)назва лаб. (R81)

Рис. 43. Формалізація зв’язку 1:Nу і 1у:Nу

Потенційними ключами відношення, що відповідає асоціативній сутності, може бути ключ відношення N-зв’язної сутності або множина, що складається з ключів обох відношень.

6.Зв’язок M:N будь-якої умовності (БУ, У, 2У) також вимагає трьох відношень для фор-

малізації: по одному для кожної сутності й одне для зв’язку. Причому, останнє повинно мати в схемі відношення первинні ключі двох інших. Більш того, якщо асоціатив-

ний об’єкт не має чи не повинен мати власного атрибута-ідентифікатора, то первинним ключем може бути тільки множина, що містить обидва зовнішніх ключі. Якщо при цьому відсутні і будь-які інші власні атрибути цього відношення, то кажуть, що воно цілком є ключем.

Приклад R3 (рис. 23, рис. 44).

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

39

 

 

 

 

 

 

 

 

 

 

 

 

 

Викладач

R18

Дисципліна

 

 

 

ПІП_викл.

назва дисц.

 

 

 

посада

 

кільк. часів

 

 

 

 

 

 

 

 

 

 

 

 

Викладання

ПІП_викл. (R18)назва дисц. (R18)

Рис. 44. Формалізація зв’язку M:N

7. При формалізації зв’язків „супертип-підтип“ відношення підтипів повинні включати як первинні ключі первинний ключ відношення супертипу, що показано на розгляну-

тому раніше прикладі (рис. 28, рис. 29). Крім того, між підтипами, у свою чергу, можуть існувати зв’язки, які формалізуються за вже розглянутими правилами.

Іноді, для прискорення пошуку інформації, у відношення супертипу додається атрибут, значення якого говорять про те, якому підтипу відповідає цей екземпляр супертипу (щось як мітки).

8. Іноді для опису предметної області недостатньо бінарних зв’язків між сутностями.

Для прикладу розглянемо три сутності: Викладач, Дисципліна, Спеціальність Викладач читає конкретну Дисципліну конкретної Спеціальності:

Викладач

 

Читання

 

 

 

 

 

 

 

 

 

Дисципліна

Спеціальність

Малахов (1)

 

Обчислювальна техніка (1)

АП (1)

 

 

ОС (2)

 

 

 

 

 

 

Асемблер (2)

ОС (2)

 

 

 

 

 

 

 

 

 

 

 

 

 

Дисципліна

Спеціальність

Юхименко (2)

 

Обчислювальна техніка (1)

МТ (3)

 

 

Економіка (3)

ОП (4)

 

 

 

ОС (2)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Дисципліна

Спеціальність

Бровков (3)

 

Електроніка і мікроелектроніка (4)

АМ (5)

 

 

Обчислювальна техніка (1)

АП (1)

 

 

 

 

 

 

 

 

 

Якби множини атрибутів цих сутностей обмежилися атрибутами приведеного відношення, то було б досить нормалізувати це відношення, використовуючи ФЗ. Однак кожна сутність має десь 5-10 атрибутів, і така реалізація дуже проблематична.

Теоретико-множинна діаграма зв’язку між даними сутностями виглядає таким чином

(рис. 45):

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

40

М. Г. Глава. Технологія проектування і адміністрування баз даних та сховищ даних

 

 

Викладач 1

 

 

 

1

Дисципліна

2

 

 

 

2

 

 

 

3

 

 

 

 

 

 

3

 

 

 

4

 

1

2

3

4

5

 

 

Спеціальність

 

 

Рис. 45. Теоретико-множинна діаграма прикладу n-арного (тернарного) зв’язку

З діаграми видно, що ми маємо справу з тернарним зв’язком, причому кожна сутність є N-зв’язковою. Такий зв’язок графічно може бути показаний початково тільки на ER-діаграмі

(рис. 46):

Викладач

М

читання

N

Дисципліна

 

 

ПІП, …

 

 

 

Назва дисц., …

 

 

L

 

 

Спеціальність

Назва спец-ті, …

Рис. 46. ER-діаграма прикладу n-арного зв’язку

Для формалізації n-арного зв’язку необхідно n+1 відношення: по одному для кожної сутності, що беруть участь у зв’язку, і одне для самого зв’язку. Причому відношення для зв’язку, точніше, його схема повинна включати первинні ключі всіх інших n відношень.

Більш того, множина усіх цих ключів буде первинним ключем відношення зв’язку.

На кінець треба додати, що в нотації MS Access відсутня можливість графічного представлення зв’язків, формалізація яких вимагає створення асоціативної сутності. Тому при їхній формалізації треба використовувати підхід, запропонований в мережевій моделі даних (с. 20). Наприклад, для зв’язку M:N (рис. 47):

Викладач

Викладання

1

Дисципліна

 

 

 

ПІП_викл.

 

1

назва_дисц.

 

 

назва_дисц.

 

 

 

посада

 

 

ПІП_викл.

 

 

кільк_годин

 

 

 

 

 

 

 

 

Рис. 47 Формалізація зв’язку M:N в нотації MS Access

Таким же чином, проте тільки після формалізації, може бути представлений і n-арний зв’язок (рис. 48):

Кафедра економічної кібернетики та інформаційних технологій. Одеський національний політехнічний університет

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]