Tabeli normaliseerimine

Normaliseerimine – Andmebaasi Andmete Korrastamine

Andmebaasi normaliseerimine on protsess, mille käigus struktureeritakse andmeid, et vähendada redundantsi ja tagada andmete järjepidevus. See on oluline, et vältida andmete ebaõiget sisestamist ja suurendada süsteemi efektiivsust. Normaliseerimise käigus jagatakse andmed eraldi tabeliteks, kus iga tabel sisaldab konkreetset teavet ja on seotud teiste tabelitega, kasutades primaar- ja välist võtmeid.

Otsime tabelites:
: KORDUSED (Повторения)
: VASTUOLUD (Противоречие)

1. Normaalkuju (1NF)

Esimene normaliseerimisvorm (1NF) nõuab, et tabeli atribuudid oleksid unikaalse nimega ja et igas veerus oleks ainult ühe tüübi andmed. Iga tabel peab sisaldama primaarvõtit, mis tuvastab ridade ainulaadsuse. Näiteks, kui meil on tabel õpilaste kohta, ei tohiks ühes lahtris olla mitut väärtust. Kui õpilasel on kaks mobiilinumbrit, tuleks need salvestada eraldi ridadesse, mitte ühte lahtrisse. See aitab vältida andmete kaotust ja segadust.

  • Tabeli atribuudid on unikaalse nimega
  • Igas veerus on ainult ühe tüübi andmed
  • Igal tabelil on Primaarvõti
  • Igas lahtris on ühte väärtust, see tähendab kui õpilasel on kaks mobiilinumbrit, siis ei tohi neid sisestada ühe lahtrisse

    2. Normaalkuju (2NF)
    Teine normaliseerimisvorm (2NF) on täiendus 1NF-le. Selle eesmärk on kõrvaldada osaline sõltuvus, kus veerud sõltuvad ainult osaliselt primaarvõtme väärtusest. Sel eesmärgil luuakse eraldi tabelid, mis on seotud primaarvõtmega. Näiteks, kui meil on tabel kursuste kohta, mis sisaldab õpilaste ja nende kursuste teavet, peaksime looma eraldi tabeli, mis seob õpilased kursustega, et vältida andmete kordumist.
  • Täiendatud 1NF
  • Luuakse eraldi tabeleid mis on seotud primaarvõtmega (VÕÕRVÕTI, Väline VÕTI)

3. Normaalkuju (3NF)

Kolmas normaliseerimisvorm (3NF) on täiendus 1NF-le ja 2NF-le ning nõuab, et kõik veerud tabelis oleksid otse seotud primaarvõtmega. See tähendab, et tuleb eemaldada kõik veerud, mis ei ole seotud primaarvõtmega, et vältida transitiivset sõltuvust. Näiteks, kui tabelis õpilane on veerg “keskmine_hinne”, kuid see veerg ei ole otseselt seotud primaarvõtmega, tuleks see tabelist eemaldada ja potentsiaalselt luua uus tabel, mis hoiab sellist teavet.

  • Täiendatud 1NF, 2NF
  • on vaja kustutada need veerud, mis ei ole otse seotud primaarvõtmega
  • Näiteks: Kui tabelis opilane on veer keskmine_hinne, siis keskmine_hinne ei ole seotud primaarvõtmega

Normaliseerimise Eelised

Andmebaasi normaliseerimise eelised on mitmekesised. Esiteks aitab see vähendada andmete kordumist, mis omakorda vähendab salvestusruumi kasutamist ja tõstab andmete töötlemise kiirus. Teiseks, normaliseerimine aitab hoida andmeid kooskõlas ja tagab, et kõik muudatused andmetes kajastuvad automaatselt. Lõpuks aitab see vältida andmete ebaõiget sisestamist, mis võib viia valeanalüüsini ja valeotsusteni. Normaliseerimine on seega hädavajalik etapp igasuguste andmebaaside kavandamisel ja haldamisel.

Täiendavad Ressursid