projektovanje baze podataka
TRANSCRIPT
UNIVERZITET U KRAGUJEVCU
EKONOMSKI FAKULTETwww.ekfak.kg.ac.rs
Poglavlje 7Projektovanje baza podatakaTransformacija MOV u Relacioni model
Transformacija MOV u Relacioni model
MOV je semantički bogat i koristi se u postupku logičkog projektovanja baze podataka.
Ne postoji komercijalni DBMS zasnovan na ovommodelu, pa je neophodno ovaj model prevesti u nekidrugi koji se može fizički implementirati na računaru.
Najveći broj komercijalnih DBMS je zasnovan na relacionom modelu.
Transformacija MOV u Relacioni model
Pravila prevođenja MOV-a u relacioni model:
1. Svaka klasa objekta (entitet) iz MOV modela (dijagrama) postaje relacija, pri čemu naziv klase postaje naziv relacije, a atributi klase postaju atributi relacije. Kod klase jakih objekata, identifikator klase objekta postaje primarni ključ relacije.
Transformacija MOV u Relacioni model
2. Svaki slab objekat takođe postaje relacija, pri čemu naziv klase slabog objekta postaje naziv relacije a njegovi atributi postaju atributi relacije. Identifikator nadređenog objekta postaje jedan od atributa relacije koja odgovara slabom objektu i postaje deo primarnog ključa te relacije. Primarni ključ relacije slabog objekta čine primarni ključ nadređenog objekta i atributi slabog objekta koji jedinstveno identifikuju pojavljivanje slabog objekta u odnosu na jedno pojavljivanje nadređenog objekta.
Transformacija MOV u Relacioni model
Primer:
Radnik(Mlb, Starost, Adresa, ImeR)
Isplate(Mlb, Datum, Iznos)
Transformacija MOV u Relacioni model
3. Objekat nadtip (generalizovani tip objekta) postaje relacija, pri čemu naziv nadtipa postaje naziv relacije a atributi nadtipa postaju atributi relacije. Primarni ključ nadtipa postaje primarni ključrelacije.
4. Objekat podtip takođe postaje relacija, pri čemu naziv podtipa postaje naziv relacije a atributi podtipa postaju atributi relacije. Primarni ključnadtipa postaje primarni ključ relacije.
Transformacija MOV u Relacioni model
Primer:
Student(BrIndeksa, Adresa, Ime)Davalac Krvi(BrIndeksa, KrGrupa)Sportista(BrIndeksa, Sport)
Transformacija MOV u Relacioni model
5. Mešoviti tip objekat – veza (agregacija) je identifikaciono i egzistencijalno slab objekat. Zbog toga se agregacija transformiše u relaciju tako što pored svojih atributa sadrži i primarne ključeve komponenti agregacije koji su ujedno i deo složenog primarnog ključa agregacije. Ako je potrebno atributi same agregacije mogu postati deo složenog primarnog ključa.
Transformacija MOV u Relacioni model
Primer:
Student(BrInd, Adresa, ImeS, Starost)Predmet(SifraP, NazivP)Prijava(BrInd, SifraP, Datum, Ocena)
Transformacija MOV u Relacioni model
6. Veza sa kardinalnošću (1,1) : (1,1) i oba objekta koji u njoj učestvuju prevodi se u jednu relaciju čija su obeležja svi atributi jednog i drugog objekta. Kandidati za ključ u ovoj relaciji su primarni ključevi oba objekta u vezi.
7. Veza sa kardinalnošću (0,1) : (1,1) i objekti koji u njoj učestvuju postaju dve relacije, za svaki objekat po jedna (prema pravilu 1), pri čemu se primarni ključ objekta sa strane (0,1) ubacuje kao atribut druge relacije (kao spoljni ključ).
Transformacija MOV u Relacioni model
Primer:
Nastavnik(SifraN, Adresa, ImeN, Starost)Katedra(SifraK, Naziv, SifraN)
Transformacija MOV u Relacioni model
8. Veza sa kardinalnošću (0,1) : (0,1) se prvo pretvara u agregaciju, a zatim se vrši transformacija. Na taj način nastaju tri relacije, po jedna za svaki objekat (prema pravilu 1) i jedna za agregaciju. Atributi relacije koja odgovara agregaciji su, pored sopstvenih, i primarni ključevi objekata komponenti i oba su kandidati za ključ ove relacije (usvaja se jedan od ova dva).
Transformacija MOV u Relacioni model
Primer:
Nastavnik(SifraN, Adresa, ImeN, Starost)Kabinet(Broj, Povrsina)duži(SifraN, Broj)
Transformacija MOV u Relacioni model
9. Veza sa kardinalnošću (1,1) : (0,M) ili (1,1) : (1,M) i objekti koji u njoj učestvuju postaju dve relacije, po jedna za svaki objekat tj. sama veza ne postaje relacija. Primarni ključ objekta sa strane (*,M) se dodaje relaciji koja odgovara objektu sa strane (1,1) i postaje strani ključ.
Transformacija MOV u Relacioni model
Primer:
Smer(SifraS, NazivS, SifraK)Katedra(SifraK, NazivK)
Transformacija MOV u Relacioni model
Primer:
Predmet(SifraP, NazivP, SifraK)Katedra(SifraK, NazivK)
Transformacija MOV u Relacioni model
10. Veza sa kardinalnošću (0,1) : (0,M) ili (0,1) : (1,M) se prvo pretvara u agregaciju, a zatim se vrši transformacija. Na taj način nastaju tri relacije, po jedna za svaki objekat (prema pravilu 1) i jedna za agregaciju. Pri tome su atributi relacije koja odgovara agregaciji primarni ključevi komponenti, a njen primarni ključ je primarni ključ objekta sa strane (0,1).
Transformacija MOV u Relacioni model
Primer:
Student(BrInd, Starost, Adresa, ImeS)Smer(SifraS, NazivS)pripada(BrInd, SifraS)
Transformacija MOV u Relacioni model
Primer:
Nastavnik(SifraN, Starost, Adresa, ImeN)Katedra(SifraK, NazivK)pripada(SifraN, SifraK)
Transformacija MOV u Relacioni model
11. Veza sa kardinalnošću (0,M) : (0,N), (1,M) : (0,N) ili (1,M) : (1,N) se prvo pretvara u agregaciju, a zatim se vrši transformacija. Na taj način nastaju tri relacije, po jedna za svaku komponentu (prema pravilu 1) i jedna za agregaciju. Pri tome su atributi relacije koja odgovara agregaciji primarni ključevi komponenti, a njen primarni ključ je složeni ključ koji se sastoji od primarnih ključeva komponenti.
Transformacija MOV u Relacioni model
Primer:
Nastavnik(SifraN, Starost, Adresa, ImeN)Predmet(SifraP, NazivP)predaje(SifraN, SifraP)
Transformacija MOV u Relacioni model
12. Unarne veze (veze između dva objekta istog tipa) se prevode u relacioni model podataka isto kao i binarne, s tim što je, s obzirom da bi spoljni ključ u relaciji imao isto ime kao i primarni, neophodno izvršiti njegovo preimenovanje.
Transformacija MOV u Relacioni model
Primer:
Predmet(SifraP, NazivP)uslovni(SifraP, SifraUslovnog)
BAZE PODATAKA
Dr Vladimir Ranković, [email protected]