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

Завдання 2. Виконати приведення відношення, сформованого при виконанні попереднього завдання, до 3нф.

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

Перерахуємо імена його атрибутів і їх короткі характеристики:

  • Тип вулиці – типи вулиць, на яких розміщені будівлі.

  • Назва вулиці – назви вулиць, на яких розміщені будівлі.

  • Ширина вулиці – ширину вулиць, на яких розміщені будівлі.

  • Номер будинку – номери будівель.

  • Довжина будинку – довжину будівель.

  • Ширина будинку – ширину будівель.

  • Поверховість будинку – поверховість будівель.

  • Будівельна організація – назви будівельних організацій, що виступали в якості генпідрядників при будівництві.

  • Директор будівельної організації – прізвища та ініціали директорів будівельних організацій, що виступали в якості генпідрядників при будівництві.

Відношення має ключ складений з двох атрибутів: Назва вулиці, Номер будинку.

При розгляді нормальних форм будемо відзначати всі характерні їм аномалії та небажані ефекти.

Відношення, що розглядається, знаходиться у 1НФ, оскільки містить тільки прості атрибути.

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

  • має місце дублювання даних про вулиці, оскільки на вулиці може розміщуватись декілька будинків;

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

Для ліквідації часткової залежності та приведення розглядуваного відношення до 2НФ необхідно розкласти його на два відношення наступним чином:

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

  • побудувати проекцію на частину складеного ключа та атрибути, що залежать від цієї частини.

У результаті отримаємо два відношення, вулиця і будинок, які знаходяться в 2НФ.

вулиця

Тип вулиці

Назва вулиці

Ширина вулиці

вулиця

50 років Жовтня

15

вулиця

Героїв Сталінграда

7

провулок

Леніна

6

бульвар

Пушкіна

24

будинок

Назва вулиці

Номер будинку

Довжина будинку

Ширина будинку

Поверховість будинку

Будівельна організація

Директор будівельної організації

50 років Жовтня

21

65

15

9

Житлоінвест

Іванов І.І.

50 років Жовтня

25

70

14,6

9

Житлоінвест

Іванов І.І.

50 років Жовтня

27

45

15,6

9

Житлобуд

Петров П.П.

50 років Жовтня

33

52

12,6

5

Житлоінвест

Іванов І.І.

50 років Жовтня

50

48

12,6

5

Житлобуд

Петров П.П.

Героїв Сталінграда

21

65

15

9

Житлоінвест

Іванов І.І.

Героїв Сталінграда

54

150

15

9

Житлобуд

Петров П.П.

Леніна

78/19

98

15

9

Агро

Сидоров С.С.

Леніна

56

48

12

5

Агро

Сидоров С.С.

Леніна

58

56

12,6

5

Житлоінвест

Іванов І.І.

Пушкіна

48

48

12

5

Агро

Сидоров С.С.

Пушкіна

55

40

12

5

Агро

Сидоров С.С.

Аналіз отриманих відношень показує, що у відношенні будинок є транзитивна функціональна залежність: Назва вулиці, Номер будинкуБудівельна організаціяДиректор будівельної організації.

Наявність транзитивних залежностей породжує наступні незручності й аномалії:

  • має місце дублювання інформації про директора однієї організації;

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

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

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

Будівельна організація

Будівельна організація

Директор будівельної організації

Житлоінвест

Іванов І.І.

Житлобуд

Петров П.П.

Агро

Сидоров С.С.

будинок

Назва вулиці

Номер будинку

Довжина будинку

Ширина будинку

Поверховість будинку

Будівельна організація

50 років Жовтня

21

65

15

9

Житлоінвест

50 років Жовтня

25

70

14,6

9

Житлоінвест

50 років Жовтня

27

45

15,6

9

Житлобуд

50 років Жовтня

33

52

12,6

5

Житлоінвест

50 років Жовтня

50

48

12,6

5

Житлобуд

Героїв Сталінграда

21

65

15

9

Житлоінвест

Героїв Сталінграда

54

150

15

9

Житлобуд

Леніна

78/19

98

15

9

Агро

Леніна

56

48

12

5

Агро

Леніна

58

56

12,6

5

Житлоінвест

Пушкіна

48

48

12

5

Агро

Пушкіна

55

40

12

5

Агро

Отримані відношення задовольняють обмеженням, що накладаються на відношення у третій нормальній формі.

Контрольні запитання

  1. Які відношення бази даних називаються вихідними?

  2. Охарактеризуйте нормальні форми.

  3. У чому суть процесу нормалізації відношень?

  4. Як виконується нормалізація відношень?

  5. Дайте визначення першої нормальної форми.

  6. Дайте визначення другої нормальної форми.

  7. Дайте визначення третьої нормальної форми.

  8. Дайте визначення підсиленої третьої нормальної форми.

Завдання для самостійної роботи

Сформуйте вихідне відношення бази даних, у якому буде зберігатися наступна інформація:

Про будівельні організації

Назва

Адреса

ПІБ директора

Союзрембуд

вул. Гагаріна, 14

Іванов І.І

БМУ №4

вул. Пролетарська, 66/1

Петров П.П.

ВАТ "Житлобуд"

вул.60 років СРСР,11

Сидоров С.С.

Про будинки

Вулиця

Номер

Довжина

Ширина

Поверховість

які будувалися "Союзрембуд"

Леніна

21

65

15

9

25

70

14,6

9

27

45

15,6

9

33

52

12,6

5

50

48

12,6

5

які будувалися БМУ №4

Красіна

23

65

15

9

54

150

15

9

які будувалися ВАТ "Житлобуд"

Жадова

78/19

98

15

9

56

48

12

5

58

56

12,6

5

Сформуйте вихідне відношення бази даних, у якому буде зберігатися наступна інформація:

Про землевласників

Назва

Адреса

ПІБ директора

АТ "Континент"

вул. Гагаріна, 14

Іванов І.І

ЗАТ "Укртатнафта"

вул. Леніна, 12

Петров П.П.

СП "Кребо"

вул. Бутиріна, 11

Сидоров С.С.

Про земельні ділянки

Вулиця

Номер

Дата рішення

Термін, років

Площа, га

АТ "Континент"

Леніна

21

20.05.01

5

1

Красіна

25

15.02.05

10

0,5

Жадова

27

02.09.07

6

0,85

Бутиріна

33

26.12.00

постійне

0,3

Гагаріна

50

14.01.95

8

2

СП "Кребо"

Бутиріна

23

30.09.98

15

0,42

Гагаріна

54

05.06.00

постійне

0,75

ЗАТ "Укртатнафта"

Лугова

78

02.09.07

15

9

Леніна

56/19

26.07.26

постійне

0,5

Леонова

26

02.09.07

3

1

Лісова

58

19.03.00

6

5

Сформуйте вихідне відношення бази даних, у якому буде зберігатися наступна інформація:

Про будинки

Вулиця

Номер

Рік будівництва

Леонова

12

1984

Леніна

25

1976

Бутиріна

33

1977

Про квартири в будинку

Поверх

Номер

Кількість кімнат

Площа

Леніна, 25

2

12

3

68

3

26

1

34

5

41

2

48

4

23

2

48

7

45

4

84

Леонова, 12

1

4

3

54

3

55

2

48

Бутиріна, 33

4

34

3

58

5

23

3

62

4

45

2

42

7

12

2

43

Виконати приведення відношення до 3НФ.

Будівля

Назва вулиці

Ширина вулиці

Покриття вулиці

Номер будинку

Довжина будинку

Ширина будинку

Будівельна організація

Директор будівельної організації

Телефон будівельної організації

Леніна

15

асфальт

12

42

12

Житлоінвест

Іванов І.І.

3-33-33

Леніна

15

асфальт

15

42

15

Житлоінвест

Іванов І.І.

3-33-33

Леніна

15

асфальт

16

72

12

Житлобуд

Петров П.П.

2-2-22

Красіна

9

асфальт

12

72

12

Житлоінвест

Іванов І.І.

3-33-33

Красіна

9

асфальт

14

72

12

Житлобуд

Петров П.П.

2-2-22

Красіна

9

асфальт

12

72

12

Житлоінвест

Іванов І.І.

3-33-33

Красіна

9

асфальт

14

72

12

Житлобуд

Петров П.П.

2-2-22

Бетонна

9

бетон

1

12

6

Агро

Сидоров С.С.

4-44-44

Бетонна

9

бетон

11

10

6

Агро

Сидоров С.С.

4-44-44

Бетонна

9

бетон

12

42

12

Житлоінвест

Іванов І.І.

3-33-33

Бетонна

9

бетон

15

12

10

Агро

Сидоров С.С.

4-44-44

Бетонна

9

бетон

17

12

12

Агро

Сидоров С.С.

4-44-44

Виконати приведення відношення Земельна ділянка до 3НФ.

Земельна ділянка

Тип вулиці

Назва вулиці

Номер будинку

Тип покриття вулиці

Призначення ділянки

Площа

Власник

Адреса власника

Телефон власника

вулиця

Леніна

2

асфальт

землі житлової забудови

12

Іванов І.І.

Леніна, 2

3-33-33

вулиця

Леніна

3

асфальт

землі житлової забудови

15

Федоров І.І.

Леніна, 3

5-55-55

вулиця

Леніна

6

асфальт

землі житлової забудови

10

Миколаєнко П.П.

Леніна, 56

2-2-22

вулиця

Красіна

12

асфальт

землі житлової забудови

12

Костенко І.І.

Красіна, 12

6-77-77

вулиця

Красіна

14

асфальт

землі громадської забудови

10

Томін П.П.

Чапаєва, 23

2-55-55

вулиця

Красіна

15

асфальт

землі житлової забудови

12

Іванов І.І.

Леніна, 2

3-33-33

вулиця

Красіна

19

асфальт

землі житлової забудови

12

Петров П.П.

Шевченка, 54

4-55-22

вулиця

Бетонна

2

щебінь

землі житлової забудови

12

Сидоров С.С.

Бетонна, 23

4-44-44

вулиця

Бетонна

24

щебінь

землі житлової забудови

11

Васін С.С.

Бетонна, 24

4-66-44

вулиця

Бетонна

25

щебінь

землі промисловості

12

Іванов І.І.

Леніна, 2

3-33-33

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