Changes between Version 5 and Version 6 of Normalization
- Timestamp:
- 06/10/24 15:33:13 (7 months ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Normalization
v5 v6 9 9 || 0101002000000 || Петра || Петреска || 123 || Коле Неделковски || 13 || 1 || 2 || A222222 || 2020-01-01 || 2025-01-01 || МВР Скопје || 1234 || ОУ Кочо Рацин || 768 || Македонија || 1 || || || 10 10 11 === Функциски зависности 12 11 13 R = {embg, g_ime, g_prezime, a_id, a_ulica, a_broj, a_vlez, a_stan, d_broj, d_vazi_od, d_vazi_do, d_izdaden_od, im_id, im_mesto, a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} 14 15 ---- 16 Множество функциски зависности: 12 17 13 18 embg →g_ime, g_prezime, a_id, d_broj \\ … … 26 31 g_ime, g_prezime, a_ulica, a_broj, a_vlez, a_stan, d_vazi_od, d_vazi_do, d_izdaden_od, im_mesto, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm 27 32 33 Со оглед на тоа што атрибутот embg е едиствен атрибут кој што се наоѓа само на левата страна од функционалните зависности, ја добиваме следната канонична покривка: 34 28 35 {embg}+ = {g_ime, g_prezime, a_id, a_ulica, a_broj, a_vlez, a_stan, im_id, im_mesto, d_broj, d_vazi_od, d_vazi_do, d_izdaden_od, a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} = R \\ 29 {embg} е единствен кандидат клуч и примарен клуч. 30 31 Во вака дефинираната релација нема повеќекратни зависности, па оттука следува дека задоволува прва нормална форма. \\ 36 Според ова, {embg} е единствен кандидат клуч и примарен клуч. 37 38 Според дефиницијата за 1НФ која гласи: 39 40 „Сите атрибути треба да бидат атомски (елементарни) 41 Релација во 1НФ не може да има атрибут чија вредност е 42 - множество од вредности; 43 - терки вредности (вгнездени релации)“ 44 Во вака дефинираната релација нема повеќекратни зависности и атрибути и нема вгнездени релации, па оттука следува дека задоволува прва нормална форма. \\ 45 46 Според дефиницијата на Silberschatz, Korth и Sudarshan: 47 „R е во 2НФ, акко секој атрибут A од R задоволува еден од следните два критериуми: 48 - е дел од некој кандидат клуч 49 - не е парцијално зависен од некој кандидат клуч“ 32 50 Клучот на релацијата е составен од само еден атрибут, па парцијална зависност не е возможна, затоа, задоволува втора нормална форма. \\ 33 51 34 52 ---- 35 53 36 Не е во трета нормална форма поради: \\ 54 === Декомпозиција до највисока можна нормална форма 55 Следно, целта е да ја доведеме релацијата R до највисоката можна нормална форма. Имајки ја во предвид дефиницијата на Codd за трета нормална форма која гласи: „Ниту еден непримарен атрибут од R не е транзитивно зависен од примарниот клуч“, лесно можеме да забележиме транзитивна зависност како на пример оваа: 56 37 57 d_broj → d_vazi_od, d_vazi_do, d_izdaden_od 38 58 39 Декомпозиција: \\ 40 R1 {d_broj, d_vazi_od, d_vazi_do, d_izdaden_od} – задоволува BCNF 59 Оттука, заклучуваме дека релацијата не е во трета нормална форма и започнуваме со декомпозиција. 60 61 ==== Декомпозиција: \\ 62 R1 {d_broj, d_vazi_od, d_vazi_do, d_izdaden_od} – **задоволува BCNF** 41 63 42 64 R2 {embg, g_ime, g_prezime, a_id, a_ulica, a_broj, a_vlez, a_stan, im_id, im_mesto, d_broj, a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} \\ 65 66 Кај оваа релација ги добиваме следните функциски зависности: 67 43 68 embg →g_ime, g_prezime, a_id, d_broj \\ 44 69 a_id → a_ulica, a_broj, a_vlez, a_stan, im_id \\ … … 46 71 im_id → im_mesto, a_id_gm \\ 47 72 48 Не е во трета нормална форма поради: \\ 73 Тука, повторно може да се забележи транзитивна зависности како оваа: 74 49 75 im_id → im_mesto, a_id_gm \\ 50 76 {im_id}+ = {im_mesto, a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} \\ 51 77 78 И со тоа заклучуваме дека оваа релација не задоволува трета нормална форма и затоа правиме декомпозиција на R2_1 и R2_2. 79 80 Оттука за R2_1 добиваме: 52 81 R2_1 {im_id, im_mesto, a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} – задоволува втора нормална форма \\ 53 82 im_id → im_mesto, a_id_gm \\ 54 83 a_id_gm → a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm 55 84 56 Не е во трета нормална форма поради: \\85 R2_1 не е во трета нормална форма поради појава на транзитивна зависност и тоа: \\ 57 86 a_id_gm → a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm \\ 58 87 {a_id_gm}+ = {a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} \\ 59 88 60 R2_1_1 = {a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} – задоволува BCNF \\ 61 R2_1_2 = {im_id, im_mesto, a_id_gm} – задоволува BCNF 89 Доколку направиме декомпозиција на R2_1 на R2_1_1 и R2_1_2, лесно можеме да забележиме дека и двете релации задоволуваат BCNF според тоа што: \\ 90 R која што е 1НФ е во БКНФ ако за секоја нетривијална функциска зависност (за секоја детерминанта) X → Y, \\ 91 X е супер клуч (множество атрибути што на единствен начин определува други атрибути, а при тоа не треба да е минимално такво множество). 92 93 R2_1_1 = {a_id_gm, a_ulica_gm, a_broj_gm, a_vlez_gm, a_stan_gm} – **задоволува BCNF** \\ 94 R2_1_2 = {im_id, im_mesto, a_id_gm} – **задоволува BCNF** 95 96 Следно продолжуваме со релацијата R2_2 за која знаеме дека задоволува втора нормална форма. 62 97 63 98 R2_2 {embg, g_ime, g_prezime, a_id, a_ulica, a_broj, a_vlez, a_stan, d_broj, im_id} – задоволува втора нормална форма \\ 99 100 Функциските зависности кои се појавуваат тука се: 101 64 102 embg →g_ime, g_prezime, a_id, d_broj \\ 65 103 a_id → a_ulica, a_broj, a_vlez, a_stan, im_id 66 104 67 Не е во трета нормална форма поради: \\105 Според тоа, оваа релација не е во трета нормална форма поради појавата на транзитивната зависност: \\ 68 106 a_id → a_ulica, a_broj, a_vlez, a_stan, im_id \\ 69 107 {a_id}+ = {a_id, a_ulica, a_broj, a_vlez, a_stan, im_id} 70 108 71 R2_2_1 = {a_id, a_ulica, a_broj, a_vlez, a_stan}- задоволува BCNF \\ 72 R2_2_2 = {embg, g_ime, g_prezime, a_id} – задоволува BCNF 73 74 Конечно, првичната реализација се декомпонира на следните релации: 109 Правиме декомпозиција на R2_2_1 и R2_2_2 за кои може да забележиме дека задоволуваат BCNF според претходно споментата дефиниција. 110 111 R2_2_1 = {a_id, a_ulica, a_broj, a_vlez, a_stan} - **задоволува BCNF** \\ 112 R2_2_2 = {embg, g_ime, g_prezime, a_id} - **задоволува BCNF** 113 114 **Конечно, првичната реализација се декомпонира на следните релации:** 75 115 76 116 R2_2_2 = {embg, g_ime, g_prezime, a_id} \\