You are on page 1of 5

Prirodni spoj omoguava mnogo vie od toga : konstruisanje relacija

koje pre nismo imali relacije koje sadre neke nove veze meu
podacima. Prirodni spoj je ono mono sredstvo koje daje prednost
relacijskom modelu nad mrenim ili hijerarhijskim.
7.) Deljenje
Deljenje je operacija koja je pogodna za upite u kojima se javlja re
svi. Definie se na sledei nain:
Neka su A(X,Y) i B(Z) relacije, a X,Y i Z skupovi atributa, pri emu su
Y i Z jednakobrojni, a odgovarajui domeni su im jednaki. Rezultat
deljenja A sa B (oznaka A divide by B): A[Y Z]B=R(X) , gde n-torka
X uzima vrednosti iz A.X, a par <x,y> postoji u A za sve vrednosti y
koje se javljaju u B(Z).
Operacija deljenja moe da se izvede i na sledei nain:
A(X,Y) [Y Z] B(Z)=P[X]A - P[X] ((P[X]AxB)-A)
8.) Operacije sa nula vrednostima
Prethodno navedene operacije nisu uzimale u obzir nula vrednosti.
Relaciona baza podataka zahteva da se proiri skup definisanih
operacija koje bi ukljuile i nula vrednosti. Osnovne postavke za
operacije sa nula vrednostima su:
a) Tablice istinitosti trovrednosne logike:
AND

T ? F
T T ? F
? ? ? ?
F F F F

OR
T ? F NOT
T T T T T
F
? T ? ? ?
F T ? F F
T

?-predstavlja nula vrednost, a moe da se ita i kao moda


b) Sraunavanje aritmetikih formula.
Neka su x i y dve numerike vrednosti, a neki od aritmetikih
operatora
(+, -, *, /). Vrednost aritmetikog izraza xy je po
definiciji nula vrednost ukoliko je x ili y, ili oba dobiju nula vrednost.
c) Skupovi sa nula vrednostima.
Recimo da imamo kolekcijiju {1,2,3,?}. Da li to onda predstavlja
skup? S obzirom da ? moe da uzme vrednost 1,2 ili 3 znailo bi da
to nije skup. Ovo pokazuje da postoje razne nula vrednosti npr. Nula
vrednost koja nije 1, koja nije ni 1 ni 2 itd. Ovo utie na sloenost
operacija pa se zbog toga one definiu jednom vrstom nula
vrednosti dok su ostale duplikati.
d) Dodatne operacije

S obzirom da je mogue da u naoj bazi podataka postoji neka


nula vrednost potrebno je da bude definisana neka logika koja e
identifikovati nula vrednosti. Uvodi se logika funkcija IS NULL
koja moe izbaciti vresnost T ili F (TRUE , FALSE).
- Moda selekcija (MAYBE SELECT)
Selektuju se n-torke relacije za koje se predikat selekcije
sraunava u nula vrednost na osnovu trovrednosnih tablica
istinitosti.
MAYBE SELECT[A] R3

A B
? b
? ?

- Moda spajanje (MAYBE JOIN)


Pojavljuju se one n-torke za koje se predikat spajanja sraunava u
nula vrednost na osnovu trovrednosnih tablica istinitosti.
Ra=Rb [MAYBE JOIN A=D] Rc
Rb

A
a1
a2
?

B Rc C D E Ra
b1
c1 ? e1
b2
c2 d2 e2
b3
c3 ? e3
a2
a2
?
?
?

B C D E
a1 b1 c1 ?
a1 b1 c3 ?
b2 c1 ? e1
b2 c3 ? e3
b3 c1 ?
e1
b2 c2 d2 e2
b3 c3 ? e3

e1
e3

- Spoljno spajanje (OUTER JOIN)


Date su relacije R1 (A,B) i R2 (C,D). Vrimo ekvispajanje ovih
relacija R1[A=C] R2. Ako su projekcije relacija po atributima
spajanja razliite P[A] R1 P[C]R2, tada e se u rezultatu
spajanja izgubiti neke n-torke relacija R1 i R2. Pomou spoljnjeg
spajanja moe se spreiti takvo gubljenje informacija, tako to za
n-torke relacije R1 atributi C I D uzimaju nula vrednost, a za ntorke relacije R2 atributi A I B uzimaju nula vrednost.
R1[OUTER JOIN A=C] R2
R1

A B
1 2
2 1
4 ?

R2

D
3
2

R3 A
4
2
4

B C D
2
1
2 2
1
2
?
?
?
?
3 4
?
? ?

- Spoljna unija (OUTER UNION)


Operacija unije se moe izvesti samo nad relacijama koje
zadovoljavaju kriterijume kompatibilnosti. Dodavanjem novih

atributa i postavljanjem njihovih vrednosti na nula vrednost onda


se moe izvriti operacija unije, jer dve nekompatibilne relacije su
uinjene kompatibilnim.
R3=R1 OUTER UNION R2
R1

A
a1
a2
4

B C
R2
b1 c1
b1 c2
?

A D
a1 4
a1 7

R3 A

a1
a2

B
C D
a1 b1 c1
a2 b1 c2
a1
?
?
?
?
7
?
?
5

?
?
4

1.6.4 Relacioni raun


Relacijski raun je predloio E.F. Codd kao alternativu relacijskoj
algebri.
Re je o matematikoj notaciji baziranoj na predikatnom raunu.
Zahtev se izraava tako da zadaje predikat kojeg n-torke moraju
zadovoljavati.
Postoje dve vrste relacijskog rauna:
1.)raun orijentisan na n-torke: osnovni elementi su n-torke i
2.)relacijski raun orijentisan na domene: osnovni elementi su
domeni atributa.
1.) Raun orijentisan na n-torke
U izrazima se pojavljuju sledei elementi:
a) Varijable n-torke
b) Zahtevi
c) Dobro oblikovane formule (WFF)
a) Varijable n-torke je varijabla koja poprima vrednosti n-torki iz
neke zadate relacije. Npr. ako je t varijabla koja prolazi relacijom R,
tada je t :a a-ta komponenta od t, a a je atribut od R.
b) Zahtevi su izrazi oblika x q y, gde je q operator za uporeivanje
(=,6=, <, >, _, _), a od x i y je barem jedno varijabla n-torke, tj.
oblika t :a. Druga veliina moe biti konstanta.
Zahtev da je t varijabla sa vrednostima n-torki iz relacije R,
oznaava
se sa R(t).
c) Dobro oblikovane formule (WFF) graene su od logikih veznika
(AND, OR, NOT) i kvantifikatora 9 (postoji) i 8 (za svako), u skladu sa
sledeim pravilima:
- Svaki zahtev je WFF.

- Ako su f1 i f2 WFF, tada su f1 AND f2, f1 OR f2, NOT f1 i NOT f2


takoe WFF.
- Ako je f jedna WFF u kojoj se t pojavljuje kao slobodna varijabla,
tada su 9 t(f) i 8 t(f) takoe WFF.
(Kaemo da je varijabla u WFF je vezana ako je ta varijabla bila
uvedena kvantifikatorom, inae je slobodna.)
- Nita drugo nije WFF.
Izrazi rauna orijentisanog na n-torke je oblika: ft:a;u:b; v:c; : : : j f g
gde su t, u, v varijable n-torki, a, b, c, . . . su atributi odgovarajue
relacije, a f je WFF koja sadri t, u, v, . . . kao slobodne varijable.
2.)relacijski raun orijentisan na domene.
- U raunu orijentisanom na domene varijable poprimaju vrednosti
definisane domenima, a ne specifinim vrednostima u samim
relacijama.
- Postoji zahtev lanstva da neka n-torka u nekoj relaciji, recimo R,
ima vrednosti zadane grupom varijabli ili konstanti, v1; v2; v3; : : :.,
a to se zapisuje:
R (a : v1; b : v2; c : v3; : : :):
a; b; c; . . . su atributi u relaciji R.
- Pravila za WFF su ista kao i u raunu orijentisanom na n-torke
- Relacijski raun je u veoj meri ne-procedualan nego relacijska
algebra.
- Praktini relacijski jezici (namenjeni direktnim korisnicima) vie lie
na raun nego na algebru.
- Najraireniji dananji jezik SQL zasnovan je na raunu
orijentisanom na n-torke. A drugi poznati jezik QBE (Query By
Example) koristi raun orijentisan na domene.
Normalizacija relacione baze podataka

Relacijska sheme dobivena iz ERsheme moe sadravati nedore


cenosti koje treba ukloniti prije
implementacija. Uklanjanje
tih loih strana polazne sheme zove
se normalizacija.

Teorija normalizacije zasnovana je


na pojmu normalnih formi u
matematici.
Relacija definirana u prethodnom
predavanju po definiciji zadovoljava
prvu normalnu formu ili skraceno
1NF.
Relacija zadovoljava 1NF ako je
vrijednost svakog
atributa jednostruka i nedjeljiva.

You might also like