240 likes | 445 Views
Informacioni sistemi -vežbe-. Baze podataka, 1. čas. Relacione baze podataka. Access Najveća logička organizaciona jedinica podataka je n-arna relacija Relacija je skup n-torki, pri čemu svaka komponenta torke predstavlja vrednost iz jednog skupa, tzv. “domena obeležja”.
E N D
Informacioni sistemi-vežbe- Baze podataka, 1. čas
Relacione baze podataka • Access • Najveća logička organizaciona jedinica podataka je n-arna relacija • Relacija je skup n-torki, pri čemu svaka komponenta torke predstavlja vrednost iz jednog skupa, tzv. “domena obeležja”
Relacija i šema relacije 1/2 • Šema relacije je imenovana dvojka u oznaci N (R,C), gde je N naziv šeme relacije, R skup obeležja, a C skup ograničenja. • Ograničenja opisuju odnose između elemenata domena obeležja • Primer šeme relacije: Student({IND,PRZ,IME,BPI,SMER},{γ1,γ2}) (γ1) svaki student ima broj indeksa i ne postoje dva studenta sa istim brojem indeksa (γ2) broj položenih ispita je veći ili jednak 0 i manji od 50
Relacija i šema relacije 2/2 • Relacija koja zadovoljava svako ograničenje iz skupa C, predstavlja pojavu nad šemom relacije. • Relacija Student
Primarni ključ (PRIMARY KEY) • KLJUČ relacije je obeležje ili skup obeležja koji zadovoljava sledeća 2 uslova: • uslov JEDINSTVENOSTI • uslov MINIMALNOSTI • Između ekvivalentnih ključeva (primer: JMBG i IND) bira se PRIMARNI KLJUČ (jedna vrsta ograničenja relacije)
Međurelaciona ograničenja(veze) • Referencijalni integritet • Strani ključ (FOREIGN KEY) Student Smer
Vrste veza: Asocijacija Kardinaliteti Klasa asocijacije Agregacija Nasleđivanje Veze se ostvaruju isključivo preko stranog ključa Dijagram klasa - Relacioni model
Primer 1: Asocijacija 1:N Smer Student
Primer 2: Asocijacija N:M Fakultet Profesor Fakultet - Profesor
Primer 3: Kompozicija Odsek Fakultet
Primer 4: Agregacija Student Grupa za vežbe
Primer 5: Nasleđivanje Student SOsnStudija SSpecStudija
Primer 5: Nasleđivanje – 2. način • Null vrednost • Neprimereno svojstvo Student
Modela podataka. Dijagram modela podataka (Data model diagram) • Grafičko prikazivanje šeme relacione baze podataka (ER model) • Model podataka - šema relacione baze podataka koja postoji u Rational Rose-u • Model podataka se prikazuje pomoću dijagrama modela podataka • Postoji mogućnost automatskog kreiranja tabela u relacionoj bazi
Elementi modela podataka • Klasa sa stereotipom <<table>>, tj. tabela • 2 tipa veze: • Non-identifying relationship • Identifying relationship
Prevođenje objektnog modela u model podatakaPrimer 1: Asocijacija 1:N
Prevođenje objektnog modela u model podataka Primer 2: Asocijacija N:M
Prevođenje objektnog modela u model podatakaPrimer 3: Kompozicija
Prevođenje objektnog modela u model podatakaPrimer 4: Agregacija
Prevođenje objektnog modela u model podatakaPrimer 5: Nasleđivanje
Generisanje modela podataka iz dijagrama klasa • Osnovni koraci: • Kreirati bazu podataka u folderu Component View • Kreirati paket u folderu Logical View • U tom paketu kreirati odgovarajuće klase i dijagram klasa • Klase moraju biti perzistentne! • Za svaku klasu obeležiti atribut koji treba da postane primarni ključ • Kliknuti na paket desnim tasterom miša i izabrati opciju Data Modeler -> Transform to Data Model ... • U odgovarajućoj šemi kreirati dijagram modela podataka i na njega prevući izgenerisane tabele
Primeri za vežbanje: Primer 1: • Veza binarne asocijacije između klasa Radnik i Projekat. Radnik je angažovan na nijednom ili jednom projektu. Na projektu je angažovan bar jedan, a može biti angažovano i više radnika. • Radnik može biti rukovodilac više radnika, a ne mora ni jednog. Jedan radnik ima nijednog ili najviše jednog rukovodioca.
Primeri za vežbanje: Primer 2: • Veza asocijacije između klasa Proizvod i Račun predstavlja prodate proizvode, tj. stavke na računu. Proizvod se ne mora nalaziti ni na jednom računu, ali se može nalaziti i na više njih. Račun sadrži najmanje jedan, a može sadržati i više proizvoda. Za svaki prodat proizvod se zna količina u kojoj je prodat i jedinica mere. Količina prodatog proizvoda mora biti pozitivna vrednost.