23
BAZE PODATAKA Vježba 4

BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

  • Upload
    others

  • View
    5

  • Download
    1

Embed Size (px)

Citation preview

Page 1: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

BAZE PODATAKAVježba 4

Page 2: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Proces daljnjeg dotjerivanja relacijske sheme

• Etape u procesu normalizacije nazivaju se normalne

forme

• Prva normalna forma (1NF)

• Druga normalna forma (2NF)

• Treća normalna forma (3NF)

• Boyce-Codd-ova normalna forma (BCNF)

• Četvrta normalna forma (4NF)

• Peta normalna forma (5NF)

Normalizacija

Page 3: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Struktura baze podataka je dobra ako je logička

redundancija (ponavljanje) podataka minimalna

• Problemi pri izvođenju nekih operacija nad bazom

nazivaju se anomalije (potreba da se pri izmjeni

jednog atributa, dodavanju ili izbacivanju jedne n-

torke sama operacija mora ponavljati više puta,

odnosno da izbacivanje jednog logičkog skupa

podataka dovodi do neželjenog izbacivanja drugih

podataka)

• Anomalije u dodavanju n-torke, anomalije u

izbacivanju n-torke i anomalije u ažuriranju

Normalizacija

Page 4: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Relacija je u PRVOJ NORMALNOJ FORMI ako su sve

vrijednosti njenih atributa atomske

Prva normalna forma (1NF)

Page 5: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

Br_indexa Ime Semestar Studij Voditelj_studija Šifra_kolegija Naziv_kolegija Ocjena

21 Mate 4 Računarstvo Frane 123

124

267

Baze podataka

Matematika

Fizika

2

4

5

77 Ana 7 Elektronika Jure 678

589

245

567

Polja i valovi

Teorija sustava

Modeliranje

Ele. sklopovi

4

1

4

2

36 Pero 6 Elektronika Jure 678

245

Polja i valovi

Modeliranje

2

3

... ... ... ... ... ... ... ...

STUDENT (Br_indexa, Ime, Semestar, Studij, Voditelj_studija,

Šifra_kolegija, Naziv_kolegija, Ocjena)

Page 6: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

Br_indexa Ime Semestar Studij Voditelj_studija Šifra_kolegija Naziv_kolegija Ocjena

21 Mate 4 Računarstvo Frane 123 Baze podataka 2

21 Mate 4 Računarstvo Frane 124 Matematika 4

21 Mate 4 Računarstvo Frane 267 Fizika 5

77 Ana 7 Elektronika Jure 678 Polja i valovi 4

77 Ana 7 Elektronika Jure 589 Teorija sustava 1

77 Ana 7 Elektronika Jure 245 Modeliranje 4

77 Ana 7 Elektronika Jure 567 Ele. sklopovi 2

36 Pero 6 Elektronika Jure 678 Polja i valovi 2

36 Pero 6 Elektronika Jure 245 Modeliranje 3

... ... ... ... ... ... ... ...

STUDENT (Br_indexa, Ime, Semestar, Studij, Voditelj_studija,

Šifra_kolegija, Naziv_kolegija, Ocjena)

Page 7: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

Br_indexa Ime Semestar Studij Voditelj_studija

21 Mate 4 Računarstvo Frane

77 Ana 7 Elektronika Jure

36 Pero 6 Elektronika Jure

... ... ... ... ...

PRIJAVA (Br_indexa, Šifra_kolegija,

Naziv_kolegija, Ocjena)

Br_indexa Šifra_kolegija Naziv_kolegija Ocjena

21 123 Baze podataka 2

21 124 Matematika 4

21 267 Fizika 5

77 678 Polja i valovi 4

77 589 Teorija sustava 1

77 245 Modeliranje 4

77 567 Ele. sklopovi 2

36 678 Polja i valovi 2

36 245 Modeliranje 3

... ... ... ...

STUDENT (Br_indexa, Ime,

Semestar, Studij,

Voditelj_studija)

Page 8: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Druga, treća i Boyce-Codd-ova normalna forma

zasnivaju se na konceptu funkcionalne zavisnosti

atributa relacije

• Funkcionalna zavisnost

• Potpuna funkcionalna zavisnost

• Tranzitivna funkcionalna zavisnost

Funkcionalne zavisnosti

Page 9: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Atribut Y je funkcionalno zavisan od atributa X ako i

samo ako svakoj vrijednosti X odgovara jedna i samo

jedna vrijednost Y

(X ---> Y) (X -/-> Y)

Funkcionalne zavisnosti

Page 10: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Atribut Y je potpuno funkcionalno zavisan od

atributa X ako je funkcionalno zavisan od atributa X, a

nije funkcionalno zavisan ni od jednog pravog

podskupa atributa X

Funkcionalne zavisnosti

Page 11: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

A--->B

B--->C

A--->C

• Atribut C je tranzitivno funkcionalno zavisan od

atributa A ako je funkcionalno zavisan od nekog

atributa B koji je i sam funkcionalno zavisan od A

Funkcionalne zavisnosti

Page 12: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Relacija je u DRUGOJ NORMALNOJ FORMI ako i samo

ako je u 1NF i svi njeni neključni atributi potpuno

funkcionalno zavise od primarnog ključa

Druga normalna forma (2NF)

Page 13: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

Br_indexa Ime Semestar Studij Voditelj_studija

21 Mate 4 Računarstvo Frane

77 Ana 7 Elektronika Jure

36 Pero 6 Elektronika Jure

... ... ... ... ...

PRIJAVA (Br_indexa, Šifra_kolegija,

Naziv_kolegija, Ocjena)

Br_indexa Šifra_kolegija Naziv_kolegija Ocjena

21 123 Baze podataka 2

21 124 Matematika 4

21 267 Fizika 5

77 678 Polja i valovi 4

77 589 Teorija sustava 1

77 245 Modeliranje 4

77 567 Ele. sklopovi 2

36 678 Polja i valovi 2

36 245 Modeliranje 3

... ... ... ...

STUDENT (Br_indexa, Ime,

Semestar, Studij,

Voditelj_studija)

Page 14: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

KOLEGIJ (Šifra_kolegija,

Naziv_kolegija)

Br_indexa Šifra_kolegija Ocjena

21 123 2

21 124 4

21 267 5

77 678 4

77 589 1

77 245 4

77 567 2

36 678 2

36 245 3

... ... ...

PRIJAVA (Br_indexa,

Šifra_kolegija, Ocjena)

Šifra_kolegija Naziv_kolegija

123 Baze podataka

124 Matematika

267 Fizika

678 Polja i valovi

589 Teorija sustava

245 Modeliranje

567 Ele. sklopovi

678 Polja i valovi

245 Modeliranje

... ...

Page 15: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Relacija je u TREĆOJ NORMALNOJ FORMI ako i samo

ako je u 2NF i ako u njoj ne postoji ni jedan atribut

koji je tranzitivno funkcionalno zavisan o primarnom

ključu

Treća normalna forma (3NF)

Page 16: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

Br_indexa Ime Semestar Studij

21 Mate 4 Računarstvo

77 Ana 7 Elektronika

36 Pero 6 Elektronika

... ... ... ...

STUDIJ (Studij,

Voditelj_studija)

STUDENT (Br_indexa, Ime,

Semestar, Studij)

Studij Voditelj_studija

Računarstvo Frane

Elektronika Jure

... ...

Page 17: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Relacija je u BOYCE-CODD-ovoj NORMALNOJ FORMI

ako i samo ako su sve determinante u relaciji i

kandidati za ključ

• Determinanta relacije je bilo koji atribut,

jednostavan ili složen, o kojem neki drugi atribut u

relaciji potpuno funkcionalno zavisi

Boyce-Codd-ova normalna forma

(BCNF)

Page 18: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Zadana je relacija RODITELJ koja sadrži zapise o

roditeljima i njihovoj djeci

RODITELJ (JMBG, Ime_i_prezime, God_rođenja_roditelja,

Ime_djeteta, God_rođenja_djeteta)

• Pretvorite ovu relaciju u 1NF

ZADATAK 1

Page 19: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Trgovina prodaje različite proizvode koje nabavlja od

različitih dobavljača. Isti proizvod može se kupiti od

različitih dobavljača po različitim cijenama, a isti

dobavljač može nuditi više različitih proizvoda.

Situacija je opisana sljedećom relacijom

CJENIK (id_proizvoda, id_dobavljača, Naziv_proizvoda,

Naziv_dobavljača, Adresa_dobavljača, cijena)

• Pretvorite ovu relaciju u 2NF

ZADATAK 2

Page 20: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Suradnici neke tvrtke rade na različitim projektima,

pri čemu svaki suradnik radi na točno jednom projektu.

Situacija je opisana sljedećom relacijom

SURADNIK (JMBG_suradnika, Ime_i_prezime, Bruto_plaća,

broj_projekata, Rok_završetka_projekta)

• Pretvorite ovu relaciju u 3NF

ZADATAK 3

Page 21: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Tvornica isporučuje svoje proizvode kupcima. Jedna

isporuka šalje se jednom kupcu, a može sadržavati više

različitih proizvoda. Situacija je opisana sljedećom

relacijom

ISPORUKA (br_isporuke, Datum_slanja, br_kupca,

Ime_kupca, Adresa_kupca, br_proizvoda,

Naziv_proizvoda)

• Pretvorite ovu relaciju u 3NF

ZADATAK 4

Page 22: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Jedan kolegij održava se uvijek u istoj predavaonici,

ali u nekoliko vremenskih termina tjedno. Situacija je

opisana sljedećom relacijom

RASPORED (br_predavaonice, Termin, br_kolegija)

• Pretvorite ovu relaciju u BCNF

ZADATAK 5

Page 23: BAZE PODATAKA. semestar/Baze podataka/Laboratorijske vježbe...21 Mate 4 Računarstvo Frane 123 Baze podataka 2 21 Mate 4 Računarstvo Frane 124 Matematika 4 21 Mate 4 Računarstvo

• Zadana je nenormalizirana relacija KNJIGA

KNJIGA(br_knjige, Naziv_knjige, br_strana, Izdavać,

Adresa_izdavaća, Autor)

• Dovedite ovu relaciju do 3NF

ZADATAK 6