Professional Documents
Culture Documents
Model Podataka
Model Podataka
Model podataka
12/25/2009
Baze podataka
12/25/2009
Baze podataka
ER (ERA) model
12/25/2009
MOV
Entity
Model
Relationship
Objekti
Atribute
Veze
Baze podataka
12/25/2009
Baze podataka
Razlozi:
jednostavan
pregledan
lak za primenu i komuniciranje
ima dobru semantiku
ne zavisi ni od jednog konkretnog sistema
za upravljanje bazom podataka
moe se relativno lako prevesti u bilo koji model baze
podataka (hijerarhijski, mreni i relacioni)
Osnovni elementi ER modela su ...
12/25/2009
Baze podataka
Entiteti
Objekti modela koji su jednoznano odreeni nazivaju se
jedinstveno entitetima.
Entiteti se grafiki prikazuju pravougaonikom u okviru koga se
upisuje naziv tipa entiteta u jednini.
12/25/2009
Baze podataka
12/25/2009
Baze podataka
Atributi
Entiteti poseduju osobine (svojstva, obeleja). Opis jedne
osobine se sastoji od atributa (primer: visina, teina, boja ...)
kojim je jednoznano odreena vrsta osobine i vrednost
artibuta (primer: 188cm, 76 kg, zelena ...). Zajedno, atribut i
vrednost atributa jesu opis odreene osobine entiteta.
Grafiki prikaz atributa:
12/25/2009
Baze podataka
IME
BR. INDEKSA
STUDENT
JMBG
12/25/2009
Baze podataka
12/25/2009
10
Baze podataka
Kljuevi
Klju je atribut ili kombinacija atributa koji jednoznano
odreuju entitet iz skupa. Obino je to jedan (prost ili
elementaran klju) ili kombinacija dva ili vie atributa (sloen
klju).
U jednom entitetu moe postojati vie kombinacija atributa
koji zadovoljavaju definiciju kljua (Primer: za jedno vozilo
mogui atributi-kandidati za klju koji jednoznano definiu
svako vozilo su: registarski broj, broj saobraajne dozvole,
broj motora, broj asije, itd. Svi ovi atributi pojedinano
odreuju jednistveni primerak entiteta Vozilo). Jedan od
kandidata koji se izabere da praktino slui za jednoznanu
identifikaciju entiteta se naziva primarni klju (primary key),
a svi ostali, neizabrani kandidati se tada nazivaju alternativni
kljuevi.
12/25/2009
11
Baze podataka
IME
BR. INDEKSA
STUDENT
JMBG
12/25/2009
12
Baze podataka
Za klju se esto, u nedostatku jedinstvenog identifikatora,
uvodi novi ID broj koji se dodeljuje svakoj pojavi entiteta
vodei rauna da nema dupliranja.
Primer: Za entitet Predmet ne usvajamo atribut Naziv kao
klju, jer mogu postojati dva predmeta sa istim nazivom ali
razliitim programima i fondom asova. Zato se kao novi
identifikator (klju) uvodi ifra koja se jedinstveno
dodeljuje svakom predmetu. Slino, moemo uvesti ifru
ID kao atribut (i klju) entiteta Nastavnik.
Naziv
ifra
Predmet
12/25/2009
Ime
ifra ID
Nastavnik
Prezime
JMBG
13
Baze podataka
Veze (odnosi) izmeu entiteta
Entiteti koji su elementi istog skupa, kao i entiteti iz razliitih
skupova mogu meusobno stajati u razliitim odnosima, tj.
povezani razliitim vezama.
Grafiki se veza prikazuje rombom u kome se upisuje naziv
veze.
12/25/2009
14
Baze podataka
12/25/2009
15
Baze podataka
1:1
12/25/2009
(a)
1:N
(b)
N:1
(c)
M:N
(d)
16
Baze podataka
1:1 veza (jedan prema jedan), oznaava da se jedan
entitet jednog tipa pridruuje jednom entitetu drugog tipa.
je ef
Katedra
17
Baze podataka
1:N veza (jedan - prema - vie), oznaava da se jedan
entitet prvog tipa pridruuje veem broju entiteta drugog
tipa, a jedan entitet drugog tipa samo jednom entitetu
prvog tipa (potpuno je isto i N:1).
12/25/2009
18
Baze podataka
Nastavnik
12/25/2009
je lan
Katedra
19
Baze podataka
12/25/2009
20
Baze podataka
Primer: Posmatrajmo entitete Student i Predmet.
Oigledno je da je posmatrana veza M:N (vie prema
vie) jer jedan student moe da slua vie predmeta, ali i
jedan predmet moe da slua vie studenata.
Broj indeksa
Student
Naziv
ifra
Prezime
Ime
Slua
Predmet
JMBG
12/25/2009
21
Baze podataka
Entiteti mogu biti i u vezi sami sa sobom i takva veza se
naziva unarna. Ako npr. entitet Nastavnik predstavlja u
irem smislu sve zaposlene radnike fakulteta koji
uestvuju u nastavi (i nastavnike (profesori i docenti) i
saradnike (asistenti i asistenti-pripravnici)) onda je moe
uspostaviti unarna veza Sarauje koja povezuje profesora
sa njegovim asistentom, sa kojim sarauje u izvoenju
nastave.
profesor
Nastavnik
sarauje
asistent
12/25/2009
22
Baze podataka
Retko, ali ipak mogue, javljaju se trojne i viestruke
veze, koje povezuju vie entiteta. Primer: Definiimo relaciju
Predavanje kao vezu izmeu tri entiteta: Predmeta koji se
predaje, Nastavnika koji dri predavanje i Uionice u kojoj je
predavanje vri.
Termin
Prezime
Ime
ifra ID
Predmet
predaje
Nastavnik
Naziv
ifra
JMBG
Uionica
Broj uion.
Broj mesta
23
Baze podataka
dri
Predavanje
iz
Predmet
Uionica
12/25/2009
24
Baze podataka
Veza moe biti totalna (obavezna, mandatorna) i
parcijalna (opciona). Jedan tip entiteta ima totalnu vezu,
ako svaki entitet toga tipa uestvuje u bar jednoj vezi,
inae, veza je parcijalna. (Primer: student obavezno slua
bar neki predmet (obavezna veza), ali ne mora da znai
da svaki predmet slua bar neki student (npr. izborni
predmeti opciona veza)). Totalna veza se grafiki
oznaava takom (zvezdicom) na temenu veze prema
objektu koji ima totalnu vezu.
12/25/2009
25
Baze podataka
Process
DETE
12/25/2009
26
Baze podataka
2 - Identifikaciona zavisnost gde je klju jednog entiteta
deo kljua slabog entiteta. Primer veze entiteta
FAKULTET i KATEDRA. Ova veza se oznaava sa I.
FAKULTET
KATEDRA
Process
12/25/2009
27
Baze podataka
3 - Identifikaciono - egzistencijalna zavisnost. Primer veze
izmeu entiteta RAUN i STAVKA, oznaava se sa E&I.
RAUN
E&I
STAVKA
Process
12/25/2009
28
Baze podataka
29
Baze podataka
Naziv
Katedra
ima
Sednica
Datum
Dnevni red
30
Baze podataka
Drugi izvor slabih entiteta su entiteti nastali zamenom
viestrukih veza binarnim, jer obino tako formiran entitet
zahteva atribute drugih entiteta sa kojima je u vezi za svoj
primarni klju.
Primer: entitet Predavanje je slab jer ne moe biti
jednoznano definisan samo svojim atributom Termin, ve
su neophodni i atributi ostalih entiteta (Sifra ID-da bi
identifikovali nastavnika koji dri predavanje, Broj
uionice-kako bi znali gde se dri predavanje, i ifra
predmeta koji se predaje). Ne moraju da se usvoje sva tri
atributa ve su dovoljna dva jer ako npr. znamo ko, kada i
gde dri predavanje znamo i iz kog predmeta se
predavanje dri (treba voditi rauna o minimalnosti kljua).
12/25/2009
31
Baze podataka
ifra ID
Nastavnik
Ime
ifra
Termin
JMBG
dri
Predavanje
Prezime
iz
Naziv
Predmet
Uionica
Broj uion.
12/25/2009
Broj mesta
32
Baze podataka
Zavisnost podtipa i zavisnost prethoenja su jo dva tipa
veze izmeu entiteta.
Generalizaciona zavisnost ili zavisnost podtipa je
zavisnost izmeu entiteta podtipa i njemu nadreenog
entiteta. Ova veza (zavisnost) se oznaava sa S.
12/25/2009
33
Baze podataka
Ime
Broj indeksa
Student
JMBG
is
Takmiar
12/25/2009
Oblast
34
Baze podataka
Zavisnost predhoenja (oznaava se sa P) se koristi za
modeliranje predhoenja izmeu dva tipa entiteta gde
jedan entitet mora da predhodi drugom.
NARUIVANJE
SLANJE
Process
12/25/2009
35
Baze podataka
12/25/2009
36
Baze podataka
Ogranienja modela podataka
Postoje, dakle svojstva objekata, atributa i veza koja se
moraju ukljuiti u opis baze podataka, a nisu sastavni deo
strukture modela podataka.
Zbog toga se definie skup ogranienja pomou koga se
iskazuju dozvoljena stanja sistema i dozvoljeni nain prelaska
iz stanja u stanje. Jedna vrsta ogranienja mogu biti pravila
kojima se specificiraju dopustiva stanja atributa.
(Ogranienja vrednosti atributa: starost radnika ne sme biti
vea od 65 godina ili koliina u skladitu ne sme biti
negativan broj i sl.)
12/25/2009
37
Baze podataka
Operatori modela podataka
Da bi se izvrila neka operacija nad podacima u bazi podataka najee
se mora prvo izdvojiti deo baze podataka nad kojim e se izvriti. Prema
nainu izdvajanja razlikujemo dve osnovne vrste operatora:
navigacione i
specifikacione.
Navigacionim operatorima se bira jedan objekat ili veza tako to se sledi
(prati) navigacija odnosno logiki put kroz strukturu podataka.
Specifikacionim operatorima se bira grupa objekata ili veza i od njih se
formira (specificira) nova struktura na osnovu postojee logike strukture
baze podataka.
Navigacionim i specifikacionim operatorima se izdvajaju pojedinani
podaci ili manji delovi baze podataka nad kojima se mogu izvriti i sloene
operacije (auriranje, izdvajanje vrednosti (min, max, sum), izvravanje
raznih procedura koje e se primenjivati za ouvanje integriteta baze
podataka).
12/25/2009
38