Changes between Version 10 and Version 11 of Normalization


Ignore:
Timestamp:
06/16/22 11:46:48 (2 years ago)
Author:
193140
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Normalization

    v10 v11  
    3737id_admin, id_ucenik - id_admin и id_ucenik сами по себе, односно нивните затворачи не претставуваат супер клуч, додека нивниот заеднички  затворач ги опфаќа сите останати атрибути, затоа претставува и кандидат клуч. Истиот претставува и единствен канидадат клуч бидејќи, примарните атрибути односно id_admin и id_ucenik не се наоѓаат на десната страна на ниту една функциска зависност.\\
    3838
    39 Со тоа можеме да видеме дека имаме парцијални зависности, односно дека подмножество на кандидат клучот покажува кон непримарни атрибути и се наоѓаме во 1НФ. За да преминеме во 2НФ. треба да ги отстраниме парцијалните зависности со што ќе ги поделеме во табели.
     39Со тоа можеме да видеме дека имаме парцијални зависности, односно дека подмножество на кандидат клучот покажува кон непримарни атрибути и се наоѓаме во 1НФ. За да преминеме во 2НФ. треба да ги отстраниме парцијалните зависности со што ќе ги поделеме во табели. \\
     40
     41R1 = (id_admin, ime_admin, prezime_admin, email_admin, password_admin, id_nastavnik, ime_nastavnik, prezime_nastavnik, opis_nastavnik, email_nastavnik, password_nastavnik, telefonski_broj_nastavnik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetk_cas, tema_cas, id_domasno, opis_domasno, id_zainteresiran_za, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, id_ucenici_domasno, dali_zavrsena_domasna, id_predava_na, cena_po_cas, broj_casovi_po_dogovor, id_predava_predmet, opis_predava_predmet)
     42R2 = (id_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik) - после ова разделување гледаме дека, R2 сме ја доведиле со BCNF, но R1 се наоѓа во 2нф, каде има транзитивни зависности и затоа не сме ни во 3нф. За да продолжеме со декомпозирање мора да создадеме уште табели и да ги разделеме податоците.\\
     43
     44R3 = (id_admin, ime_admin, prezime_admin, email_admin, password_admin, id_nastavnik, id_kvalifikacija, id_predmet, id_cas, id_domasno, id_zainteresiran_za, id_plakanja, id_slusanje, id_ucenici_domasno, id_predava_na, id_predava_predmet)
     45R4 = (id_nastavnik, ime_nastavnik, prezime_nastavnik, opis_nastavnik, email_nastavnik, password_nastavnik, telefonski_broj_nastavnik)
     46R5 = (id_kvalifikacija, dokument_kvalifikacija)
     47R6 = (id_predmet, ime_predmet)
     48R7 = (id_cas, vreme_pocetk_cas, tema_cas)
     49R8 = (id_domasno, opis_domasno)
     50R9 = (id_zainteresiran_za, datum_zainteresiran)
     51R10 = (id_plakanja, iznos)
     52R11 = (id_slusanje, plateno)
     53R12 = (id_ucenici_domasno, dali_zavrsena_domasna)
     54R13 = (id_predava_na, cena_po_cas, broj_casovi_po_dogovor)
     55R14 = (id_predava_predmet, opis_predava_predmet) - табелите од R4-R14 сега ни се наоѓаа во BCNF, гледаме дека сме ги декомпозирале добро, со тоа што имаат еден супер и кандидат клуч, не се трицијални и имаат по една ф.з., но R3 сега ни се наоѓа во 3нф за таа цел треба да направеме уште неколку чекори со што ќе ги декомпозираме до крај.\\
     56
     57R31 = (id_admin, ime_admin, prezime_admin, email_admin, password_admin)
     58R32 = (id_admin, id_nastavnik, id_kvalifikacija, id_predmet, id_cas, id_domasno, id_zainteresiran_za, id_plakanja, id_slusanje, id_ucenici_domasno, id_predava_na, id_predava_predmet) - со ова сме ги декомпозирале до BCNF сите табели без да имаме загубени ф.з. и податоци.