Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Самостійна практична робота.doc
Скачиваний:
10
Добавлен:
26.11.2019
Размер:
757.76 Кб
Скачать

Можливі ключи та детермінанти відношення r

Можливі ключі

Детермінанти

<Номер постачальника, Номер продукції, Код торгового агента, Дата закупки >

<Номер постачальника, Номер продукції, Код торгового агента, Дата закупки >

Висновок: значення можливих ключів = кількості і значенням детермінантів, тобто можна зробити висновок, що відношення R знаходиться в НФБК.

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

PROJECT (Закупка) Номер_постачальника, Назва_постачальника, Адреса, Телефон, Код типу постачальника, Тип постачальника , Прізвище директора = R1

PROJECT (Закупка) Номер продукції, Назва продукції, Код типу продукції, Тип продукції, Максимальний запас = R2

PROJECT (Закупка) Код торгового агента, ПІБ торгового агента = R3

R1

Номер постачальника

Назва постачальника

Код типу постачальника

Тип постачальника

Адреса

Телефон

Прізвище директора

101

Іваненко

1

Населення

Умань

5-05-05

Іваненко

102

Друзь

1

Населення

Жашків

2-14-02

Друзь

205

ПП "Яблучко"

2

Фермер

Умань

3-30-30

Омельчук

310

ТОВ "Карина"

3

с/г підприем.

Христинівка

2-20-95

Милостяк

Можливі ключі та детермінанти відношення R1:

Можливі ключі

Детермінанти

<Номер постачальника >

<Номер постачальника >

<Код типу постачальника >

Висновок: кількість і значення можливих ключів ≠ кількості і значенням детермінантів, тобто можна зробити висновок, що R1 не знаходиться в НФБК, отже потрібно продовжити нормалізацію.

R2

Номер продукції

Назва продукції

Код типу продукції

Тип продукції

Максимальний запас

11

редис

1

овочі

300

12

огірок

1

овочі

500

13

цибуля

1

овочі

100

14

помідор

1

овочі

500

15

капуста

1

овочі

500

16

картопля

1

овочі

1000

21

черешня

2

плоди

200

31

полуниця

3

ягоди

200

Можливі ключі та детермінанти відношення R2:

Можливі ключі

Детермінанти

<Номер продукції >

<Номер продукції >

<Код типу продукції >

Висновок: кількість і значення можливих ключів ≠ кількості і значенням детермінантів, тобто можна зробити висновок, що R2 не знаходиться в НФБК, отже потрібно продовжити нормалізацію.

R3

Код торгового агента

ПІБ торгового агента

1

Сайко

2

Притула

Можливі ключі та детермінанти відношення R3:

Можливі ключі

Детермінанти

< Код торгового агента>

< Код торгового агента>

Висновок: значення можливих ключів = кількості і значенням детермінантів, тобто можна зробити висновок, що відношення R3 знаходиться в НФБК.

3.4. Перевірка на знаходження відношень R1 та R2 у 3НФ.

Правило: Відношення знаходиться в 3НФ, якщо воно знаходиться в 2НФ, і кожен його не ключовий атрибут нетранзитивно залежить від первинного ключа.

Висновок: відношення R1 та R2 не знаходиться у 3НФ , тому що до їх складу входять транзитивні залежності:

Н омер постачальника Код типу постачальника Тип постачальника (R1)

Н омер продукції Код типу продукції Тип продукції (R2)

Необхідно привести відношення R1 та R2 до 3НФ:

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

PROJECT (R1) Номер постачальника, Назва постачальника, Адреса, Телефон, Код типу постачальника, Прізвище директора = R4

PROJECT (R2) Номер продукції, Назва продукції, Код типу продукції, Максимальний запас = R5

R4

Номер постачальника

Назва постачальника

Код типу постачальника

Адреса

Телефон

Прізвище директора

101

Іваненко

1

Умань

5-05-05

Іваненко

102

Друзь

1

Жашків

2-14-02

Друзь

205

ПП "Яблучко"

2

Умань

3-30-30

Омельчук

310

ТОВ "Карина"

3

Христинівка

2-20-95

Милостяк

Можливі ключі та детермінанти відношення R4:

Можливі ключі

Детермінанти

<Номер постачальника >

<Номер постачальника >

Висновок: значення можливих ключів = кількості і значенням детермінантів, тобто можна зробити висновок, що відношення R4 знаходиться в НФБК.R5

Номер продукції

Назва продукції

Код типу продукції

Максимальний запас

11

редис

1

300

12

огірок

1

500

13

цибуля

1

100

14

помідор

1

500

15

капуста

1

500

16

картопля

1

1000

21

черешня

2

200

31

полуниця

3

200

Можливі ключі та детермінанти відношення R5:

Можливі ключі

Детермінанти

<Номер продукції >

<Номер продукції >

Висновок: значення можливих ключів = кількості і значенням детермінантів, тобто можна зробити висновок, що відношення R5 знаходиться в НФБК.

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

PROJECT (R1) Код типу постачальника, Тип постачальника = R6

PROJECT (R2) Код типу продукції, Тип продукції = R7

R6

Код типу постачальника

Тип постачальника

1

населення

2

фермер

3

с/г підприємства

Можливі ключі та детермінанти відношення R6:

Можливі ключі

Детермінанти

<Код типу постачальника >

<Код типу постачальника >

Висновок: значення можливих ключів = кількості і значенням детермінантів, тобто можна зробити висновок, що відношення R6 знаходиться в НФБК. R7

Код типу продукції

Тип продукції

1

овочі

2

плоди

3

ягоди

Можливі ключі та детермінанти відношення R7:

Можливі ключі

Детермінанти

<Код типу продукції >

<Код типу продукції >

Висновок: значення можливих ключів = кількості і значенням детермінантів, тобто можна зробити висновок, що відношення R7 знаходиться в НФБК.

!!! Отже, в результаті нормалізації були отримані відношення, які знаходяться в НФБК: R, R3, R4, R5, R6, R7.

ІV. Побудова схеми даних отриманої БД "Закупка".

ЗАКУПКА

R 5

R4

Номер продукції

Номер постач.

Назва продукції

Назва постачальника

Код типу прод.

R

Код типу постач.

Макс. запас

Дата закупки

Адреса

Номер постачальника

Телефон

Номер продукції

Прізвище директора

Код торгового агента

Закупівельна ціна

R7

Обсяг закупки

R6

Код типу прод.

Код типу постач.

Тип продукції

Тип постачальника

R3

Код торгового агента

ПІБ торгового агента

Задача для самоперевірки набутих навичок:

Згідно отриманої ER–моделі отриманої до задачи для самоперевірки (лабораторна робота №6) створити базу даних задачі.