Institute of Computer Science
  1. Courses
  2. 2024/25 spring
  3. Databases_SO (LTAT.SO.004)
ET
Log in

Databases_SO 2024/25 spring

  • Kursuse korraldus
  • Loengud
  • Praktikumid
  • Rühmatöö
  • Olulised kuupäevad
  • Kodulugemised (autorid: Margus Roo ja Piret Luik)

Esimene normaalkuju

Esimese normaalkuju nõuded

  1. Atribuutide väärtused peavad olema atomaarsed (ehk jagamatud) ja
  2. andmetabelis pole ühesuguseid korteeže (ehk kõik read on unikaalsed) ja
  3. igas veerus hoitakse ainult sama tüüpi andmeid.

AVA Atomaarsed väärtused

Nõue: Atribuutide väärtused peavad olema atomaarsed (ehk jagamatud). Väärtus on atomaarne kui ta on jagatud väikseimaks loogiliseks osaks. See tähendab, et iga relatsiooni atribuut (teatud mööndustega võime kasutada sõna “lahter”) peab sisaldama ühte ja ainult ühte väärtust.

Vaatame järgmist relatsiooni, kus hoitakse õpilaste hindeid.

Relatsioon Opilased, mis ei vasta esimese normaalkuju nõudele.

EesnimiPerenimiOppeainedHinded
MariMaasikasMatemaatika, Keemia5, 4
JaanTammKeemia, Füüsika, Muusika4, 4, 2
MarkoÖöbikInglise keel3
JakobNisuMatemaatika4

Probleem: Selles relatsioonis (tabelis) hoitakse nii õppeainete kui ka hinnete lahtrites mitut väärtust korraga, seega pole need andmed atomaarsed ning relatsioon pole esimeses normaalkujus. Näiteks oleks hetkel Jaani füüsika hinde leidmiseks vaja koostada üpris keerukas päring.

Esimesele normaalkujule saamiseks tuleb andmed ümber korraldada nii, et igas lahtris oleks ainult üks väärtus.

Relatsioon Opilased, mis vastab esimesele normaalkuju nõudele.

EesnimiPerenimiOppeainedHinded
MariMaasikasMatemaatika5
MariMaasikasKeemia4
JaanTammKeemia4
JaanTammFüüsika4
JaanTammMuusika2
MarkoÖöbikInglise keel3
JakobNisuMatemaatika4

Kuigi tekib andmeliiasus, on nüüd kõik andmed atomaarsed ja relatsioon on esimeses normaalkujus.


AVA Unikaalsed korteežid

Nõue: Andmetabelis pole ühesuguseid korteeže (ehk kõik read on unikaalsed). See tähendab, et relatsioonis ei tohi esineda ühesuguseid korteeže ehk read ei tohi olla täpselt samasugused.

Vaatame relatsiooni, kus hoitakse muusikaalbumitega seotud infot.

Relatsioon Albumid, mis ei vasta esimese normaalkuju nõudele.

KatalooginumberEsitajaAlbumi nimiIlmumisaasta
SO-383The BeatlesAbbey Road1969
EPC 85930Michael JacksonThriller1982
CRELP 139SlowdiveSouvlaki1993
B0031994-02The WeekndAfter Hours2020
EPC 85930Michael JacksonThriller1982

Hetkel näeme, et oranžiga märgitud korteežid on identsed (tekib andmeliiasus) ja seega pole relatsioon esimeses normaalkujus. Probleemi lahendamiseks kustutame ühe nendest korteežidest.

Relatsioon Albumid, mis vastab esimese normaalkuju nõudele.

KatalooginumberEsitajaAlbumi nimiIlmumisaasta
SO-383The BeatlesAbbey Road1969
EPC 85930Michael JacksonThriller1982
CRELP 139SlowdiveSouvlaki1993
B0031994-02The WeekndAfter Hours2020

Nüüd on kõik korteežid erinevad ja relatsioon esimeses normaalkujus.


AVA Andmetüübid

Nõue: Igas veerus hoitakse ainult sama tüüpi andmeid.

Vaatleme relatsiooni, kus on raamatupoes müügil olevate raamatute info.

Relatsioon Raamatud, mis ei vasta esimesele normaalkuju nõudele.

PealkiriAutorIlmumisaastaKogus
Harry Potter ja Tarkade KiviJ.K. Rowling199710
Suur GatsbyF. Scott Fitzgerald192513
Tõde ja ÕigusAnton Hansen Tammsaare1926Kakskümmend
Kuristik rukkisJ.D. Salinger1951Seitse

Koguste veerus on kasutatud koguse märkimiseks nii arvulisi kui ka sõnalisi väärtusi ja seega pole relatsioon esimeses normaalkujus. Kuna päringute koostamine on selliste andmete põhjal keeruline ning ka esimene normaalkuju nõuab, et iga veerg sisaldaks ainult ühte tüüpi andmeid, peame kõik kogused viima ühtsele kujule.

Teeme kõik kogused numbrilisteks.

Relatsioon Raamatud, mis vastab esimesele normaalkuju nõudele.

PealkiriAutorIlmumisaastaKogus
Harry Potter ja Tarkade KiviJ.K. Rowling199710
Suur GatsbyF. Scott Fitzgerald192513
Tõde ja ÕigusAnton Hansen Tammsaare192620
Kuristik rukkisJ.D. Salinger19517

Nüüd kasutatakse koguse veerus ainult ühte tüüpi andmeid (täisarvud, ingl integer) ja seega on relatsioon esimeses normaalkujus.


AVA Enesekontrolliülesanne 1


AVA Enesekontrolliülesanne 2


NormaalkujudTeine normaalkuju
  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment