Upload
others
View
12
Download
1
Embed Size (px)
Citation preview
Relacijska baza podataka BIBLIOTEKA - 1
prof.dr. Džemal Kulašin
Kiseljak, maj 2018.
Faze u razvoju baza
�Shodno činjenici da je projektovanje baza podataka u velikoj mjeri projektovanje IS-a...
�Proizilazi da se i faze projektovanje (razvoja) baza podataka gotovo podudaraju sa fazama u razvoju IS-a
�Dakle, faze projektovanja baza podataka su:
Faze u razvoju baza
�Analiza potreba
�Analiza potreba je proces...
−analize tokova informacija,
− identifikacija podataka koje i vezameñu njima,
− identifikacija transakcija (operacija) koje ćese obavljati nad bazom podataka
Faze u razvoju baza
�Modeliranje
�Modeliranje je proces izrade šeme tj. modela baze podataka prema specifikacijianalize:
–rasporeñivanje podataka po tablicama
–utvrñivanje tipova podataka
– identifikacija odnosa meñu podacima i prevoñenje u veze meñu tablicama
Faze u razvoju baza
� Implementacija
–DBMS-om (Database Management System) (SUBP – Sistem upravljanja bazom podataka), praktično se realizira baza podataka
� Testiranje
� Održavanje
� Dokumentiranje
Modeliranje relacijske baze -BIBLIOTEKA
� Modelirajmo relacijsku bazu podataka BIBLIOTEKA, čime projektujemo dio IS-a!◦Naravno, pretpostavljamo da je završena
faza Analiza potreba!
� U ovom dijelu (eventualno) se služimo i tzv. E-R dijagramima
NASLOV KNJIGE - (TXT)IME PISCA - (TXT)NOBEL OVAC - (Y/N) BR_STRANA - (NUM)ZANR - (TXT)GODINA ROðENJA PISCA - (NUM)AKTIVAN - (Y/N)
Modeliranje relacijske baze
„Pretvaranje“ strukture u tablicuNaslovknjige
Ime pisca
Nobel Broj strana
Zanr Godinaroñenja
Aktivan
Prokleta avlija
Ivo Andrić Yes 150 Pov 1892 No
Travnička hronika
Ivo Andrić Yes 320 Pov 1892 No
Isijavanje Steven King
No 250 Hor 1947 Yes
Mračna kula
Steven King
No 450 Fan 1947 Yes
Knjige krvi Klajv Barker
No 600 Hor 1960 Yes
Utkani svijet
Klajv Barker
No 320 Fan 1960 Yes
ČekajućiGodoa
Semjuel Beket
Yes 330 Dra 1906 No
Tvrñava Meša Selimović
No 270 Dra 1910 No
Modeliranje relacijske baze
Problem:
Uočava se dupliranje podataka, i potrebno je izvršiti njihovo elimiranje!
To je problem kojeg riješava tzv. normalizacija baze podataka
Dupliranje podatakaNaslovknjige
Ime pisca
Nobel Broj strana
Zanr Godinaroñenja
Aktivan
Prokleta avlija
Ivo Andrić Yes 150 Pov 1892 No
Travnička hronika
Ivo Andrić Yes 320 Pov 1892 No
Isijavanje Steven King
No 250 Hor 1947 Yes
Mračna kula
Steven King
No 450 Fan 1947 Yes
Knjige krvi Klajv Barker
No 600 Hor 1960 Yes
Utkani svijet
Klajv Barker
No 320 Fan 1960 Yes
ČekajućiGodoa
Semjuel Beket
Yes 330 Dra 1906 No
Tvrñava Meša Selimović
No 270 Dra 1910 No
NormalizacijaNormalizacija se odvija kroz tzv. normalne forme (NF)
Prva normalna forma riješava upravo problem dupliranja, kroz kreiranje dviju tablica
Tablica: KNJIGE i Tablica: PISCI
No, potrebno je pažljivo odrediti ključeve, kako bi se tablice vezale!
Primary keyŠta je primarni ključ (primary key)?
Primarni ključ je atribut koje jedinstvenoidentificira vrstu u tabeli, te se njegova vrijednost ne smije izostaviti (NOT NULL).
Vrijednosti ključa mogu se referirati na sve zapise (slogove) jer svaki zapis ima različitu vrijednost ključa.
Primary keyŠta birati za primarni ključ (primary key)?
U principu, birati onaj atribut, odnosno polje koje se ne ponavlja; dakle, birati...?
Svaka tablica ima samo jedan primarni ključ.
Primarni ključ u drugoj tablici je tzv. strani ključ (foreign key)!
Relacijska baza - BIBLIOTEKA
� Nakon faze modeliranja, potrebno je fizički oblikovati relacijsku bazu, tj. realizirati fazu Implementacije
� U tu svrhu, potrebno je odabrati odreñeni DBMS (SUBP)
Relacijska baza - BIBLIOTEKA
� Zadatak:
� Odabrati DBMS (SUBP), te implementirati relacijsku bazu BIBLIOTEKA� Primjeri DBMS-a???
Relacijska baza - BIBLIOTEKA� Primjeri DBMS-a:
� SQL, Microsoft Access
Implementiranje relacijske baze1. Kreirati objekte baze podataka - Tablice
- Primjeniti i validaciju: - npr. broj strana knjige mora biti
veći od nule; ukoliko se pravilo prekrši,ispisati poruku "Unesite ispravan broj strana".2. Kreirati i odgovarajuće forme
Unijeti u bazu odgovarajuće podatke3. Kreirati i pojedine upite (query)
Dizajn: Tablica „Knjige“U ovom dizajnu karakteristično je polje: Pisac
Naime, kao tip podatka bira se: Lookup Wizzard
Razultat: U tablici (ili formi) Knjige, pojavljivat će se padajuća lista Ime pisca, te se izbjegava dupliranje unosa i olakšava posao u bazi!
Tablica „Knjige“ – Lookup!
Forma i podforma...Zadatak
2. Kreirati formu Knjige te podformu Pisci. Na taj način omogućiti pregled podataka o autoru knjige u podformi!
- Object - Subform
Upiti (Query)Upiti (query) su osnova pretrage svake baze podataka.
1. Kreirati standardni upit u kome će biti prikazani naslovi knjiga po abecednom redu, uz imena pisaca, sortirano po abecedi1.1. Dodati u upitu da li pisac ima Nobelovu nagradu!
Parametarski upitiParametarski upiti se često koristi, a kreira se jednostavno uz srednju zagradu u kriteriju
- Screenshot – Next Slide!
1. Kreirati tzv. parametarski upit u kome će se prikazivati knjige po žanru, uz naziv knjige i ime pisca
Parametarski upit - Žanr
Parametarski upiti...Parametarski upiti
2. Kreirati novi parametarski upit u kome će se prikazivati knjige prema zahtjevanom piscu
- npr. korisnik želi znati koje knjigepostoje u biblioteci od autora Ivo Andrić, i sl.