Changes between Version 44 and Version 45 of Normalization


Ignore:
Timestamp:
07/31/22 17:08:59 (2 years ago)
Author:
193041
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Normalization

    v44 v45  
    7777При определување на кандидат клучевите, тргнуваме од најтривијалниот суперклуч составен од сите атрибути, чиј затворач ги содржи сите атрибути.\\
    7878
    79 **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_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, id_zainteresiran_za, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet+**={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_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet}
     79**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_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet+**={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_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet}
    8080
    8181
     
    123123**R1** се наоѓа во **BCNF**, бидејќи од секоја ф.з. во F1, левата страна е суперклуч, и понатаму не ја декомпонираме.\\
    124124----
    125 R2(id_admin, ime_admin, prezime_admin, email_admin, password_admin, id_nastavnik, id_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, id_zainteresiran_za, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet)\\
     125R2(id_admin, ime_admin, prezime_admin, email_admin, password_admin, id_nastavnik, id_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet)\\
    126126F2 = { \\
    127127id_admin → ime_admin, \\
     
    153153}\\
    154154
    155 R2 се' уште е во 1НФ поради парцијалните зависности. Една од повеќето ф.з. кои прават проблем е id_admin → ime_admin. id_admin ќе го ставиме во посебна релација R21, заедно со атрибутите кои тој ги определува. Се' останато оди во R22.\\
     155R2 се' уште е во 1НФ поради парцијалните зависности. Една од повеќето ф.з. кои прават проблем е id_admin → ime_admin. id_admin ќе го ставиме во посебна релација R21, заедно со атрибутите кои тој ги определува. Се' останато оди во R22, заедно со id_admin кој е заеднички атрибут, за да се направи спојување без загуба на информации.\\
     156----
    156157R21(id_admin, ime_admin, prezime_admin, email_admin, password_admin)\\
    157158F21 = {\\
     
    162163email_admin → id_admin\\
    163164}\\
    164 Кандидат клучеви: id_admin, ime_admin.\\
    165 Примарни атрибути: id_admin, ime_admin.\\
     165Кандидат клучеви: id_admin, email_admin.\\
     166Примарни атрибути: id_admin, email_admin.\\
    166167**R21** се наоѓа во **BCNF**, бидејќи од секоја ф.з. во F21, левата страна е суперклуч, и понатаму не ја декомпонираме.\\
    167168----
     169R22(id_admin, id_nastavnik, id_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet)
     170F22 = {\\
     171id_ucenik → ime_ucenik,\\
     172id_ucenik → prezime_ucenik,\\
     173id_ucenik → opis_ucenik,\\
     174id_ucenik → email_ucenik,\\
     175id_ucenik → password_ucenik,\\
     176id_ucenik → telefonski_broj_ucenik,\\
     177email_ucenik → id_ucenik,\\
     178id_kvalifikacija → dokument_kvalifikacija,\\
     179id_predmet → ime_predmet,\\
     180ime_predmet → id_predmet, \\
     181(id_predmet, id_ucenik) → datum_zainteresiran, \\
     182(ime_predmet, id_ucenik) → datum_zainteresiran,\\
     183id_cas → vreme_pocetok_cas,\\
     184id_cas → tema_cas, \\
     185id_plakjanja → iznos,\\
     186id_domasno → opis_domasno,\\
     187(id_ucenik, id_domasno) → dali_zavrseno_domasno,\\
     188(id_cas, id_slusanje) → id_plakjanja,\\ (id_cas, id_slusanje) → id_ucenik,\\ (id_cas, id_slusanje) → plateno,\\
     189(id_nastavnik, id_predmet) →  opis_predava_predmet,\\
     190(id_nastavnik, id_ucenik) →  cena_po_cas, \\
     191(id_nastavnik, id_ucenik) →  broj_casovi_po_dogovor\\
     192}\\
     193
     194R22 е во 1НФ поради парцијалните зависности. Една од повеќето ф.з. кои прават проблем е id_ucenik → ime_ucenik,\\. id_ucenik ќе го ставиме во посебна релација R221, заедно со атрибутите кои тој ги определува. Останатото во R222.
     195----
     196R221(id_ucenik, ime_ucenik, prezime_ucenik, opis_ucenik, email_ucenik, password_ucenik, telefonski_broj_ucenik)\\
     197F221 = {\\
     198id_ucenik → ime_ucenik,\\
     199id_ucenik → prezime_ucenik,\\
     200id_ucenik → opis_ucenik,\\
     201id_ucenik → email_ucenik,\\
     202id_ucenik → password_ucenik,\\
     203id_ucenik → telefonski_broj_ucenik,\\
     204}
     205Кандидат клуч: id_ucenik.\\
     206Примарни атрибути: id_ucenik.\\
     207**R221** се наоѓа во **BCNF**, бидејќи од секоја ф.з. во F221, левата страна е суперклуч. Оваа релација понатаму не ја декомпонираме.\\
     208----
     209Да го разгледаме тоа што ни остана во R222.
     210R222(id_admin, id_nastavnik, id_ucenik, id_kvalifikacija, dokument_kvalifikacija, id_predmet, ime_predmet, id_cas, vreme_pocetok_cas, tema_cas, id_domasno, opis_domasno, datum_zainteresiran, id_plakanja, iznos, id_slusanje, plateno, dali_zavrseno_domasno, cena_po_cas, broj_casovi_po_dogovor, opis_predava_predmet)\\
     211F222 = {\\
     212id_kvalifikacija → dokument_kvalifikacija,\\
     213id_predmet → ime_predmet,\\
     214ime_predmet → id_predmet, \\
     215(id_predmet, id_ucenik) → datum_zainteresiran, \\
     216(ime_predmet, id_ucenik) → datum_zainteresiran,\\
     217id_cas → vreme_pocetok_cas,\\
     218id_cas → tema_cas, \\
     219id_plakjanja → iznos,\\
     220id_domasno → opis_domasno,\\
     221(id_ucenik, id_domasno) → dali_zavrseno_domasno,\\
     222(id_cas, id_slusanje) → id_plakjanja,\\ (id_cas, id_slusanje) → id_ucenik,\\ (id_cas, id_slusanje) → plateno,\\
     223(id_nastavnik, id_predmet) →  opis_predava_predmet,\\
     224(id_nastavnik, id_ucenik) →  cena_po_cas, \\
     225(id_nastavnik, id_ucenik) →  broj_casovi_po_dogovor
     226}\\
     227Кандидат клучеви: (id_admin, id_nastavnik, id_ucenik, id_kvalifikacija, id_predmet, id_cas, id_domasno, id_plakanja, id_slusanje); \\
     228(id_admin, id_nastavnik, id_ucenik, id_kvalifikacija, ime_predmet, id_cas, id_domasno, id_plakanja, id_slusanje)\\
     229Примарни атрибути: id_admin, id_nastavnik, id_ucenik, id_kvalifikacija, id_predmet, id_cas, id_domasno, id_plakanja, id_slusanje, ime_predmet.\\
     230R222 е во 1НФ поради парцијалните зависности. Една од повеќето ф.з. кои прават проблем е id_kvalifikacija → dokument_kvalifikacija\\. id_kvalifikacija ќе го ставиме во посебна релација R2221, заедно со атрибутите кои тој ги определува. Останатото во R2222.
     231----
     232R2221(id_kvalifikacija, dokument_kvalifikacija)\\
     233F2221 = {\\
     234id_kvalifikacija → dokument_kvalifikacija\\
     235}\\
     236Кандидат клуч: id_kvalifikacija.\\
     237Примарни атрибути: id_kvalifikacija.\\
     238**R2221** се наоѓа во **BCNF**, бидејќи има само една ф.з. и левата страна на таа ф.з. е суперклуч.\\
     239----