Sie sind auf Seite 1von 37

Poslovna

informatika
Prof. dr Angelina
Njegu

Poslovna
informatika
Uvod u baze podataka

Poslovna
informatika
Prof. dr Angelina
Njegu

Sadraj
Izvori baza podataka
ta je baza podataka
Modelovanje baze podataka
Projektovanje baze podataka
Implementacija baze podataka
Microsoft Access

Poslovna
informatika
Prof. dr Angelina
Njegu

Izvori baza podataka


Baze podataka postoje u razliitim
formama:
Elektronski podaci: tekst, video i audio zapisi,
brojevi
Knjige: kolekcija tekstova i slika, biblioteke
Datoteke organizovane u direktorijume
Skup ematskih crtea
Uzorci (sa naftnih buotina, uzorci krvi za
medicinske laboratorije, DNK uzorci u
forenzikim laboratorijama....)

Poslovna
informatika
Prof. dr Angelina
Njegu

ta je baza podataka?
Baza podataka (BP) se
najoptije moe definisati kao
dobro struktuirana kolekcija
podataka, uskladitenih sa
minimumom redundanse,
koju zajedniki koriste i
odrava vie korisnika i
aplikacija
Sa aspekta implementacije,
baza podataka predstavlja
skup tabela meusobno
povezanih putem spoljnog
kljua

Poslovna
informatika
Prof. dr Angelina
Njegu

Modelovanje baze podataka


Aplikacije su modeli realnog sveta
Izlaz1

Relan sistem
Ulaz

Cilj svakog modela je da uini da je: Izlaz1 Izlaz2


Programi za
upravljanje

Baza podataka
Informacioni sistem

Programi za
izvetavanje

Izlaz2

Poslovna
informatika

Komponente
razvoja
aplikacije sa
fokusom na
Cilj: Razvoj baze
podatke
podataka
organizacije
Zadaci: prikupljanje,
modelovanje,
projektovanje i
skladitenje podataka
upotrebom sistema
za upravljanje
bazama podataka

Prof. dr Angelina
Njegu

Poslovna
informatika
Prof. dr Angelina
Njegu

Sistemi zasnovani na BP
Aplikacija Y
Aplikacija X

Aplikacija Z

Sistem za upravljanje bazom podataka


Data Base Management System, DBMS

Baza podataka
podaci na disku

Poslovna
informatika
Prof. dr Angelina
Njegu

Model podataka
Model podataka je pojednostavljeno predstavljanje realnog
sistema preko skupa objekata (entiteta), veza izmeu
objekata i njihovih atributa
U literaturi model podataka je definisan kao EntityRelationship dijagram (ERD)

Poslovna
informatika

Osnovni koncepti modela


podataka - OBJEKAT

Prof. dr Angelina
Njegu

Objekat je klasa osoba, mesta, objekata, dogaaja ili


koncepata o kojima treba da prikupljamo i skladitimo podatke.
Tipovi objekata se mogu klasifikovati u osobe, mesta, stvari ili
dogaaje.
Objekti tipa osobe: radnici, klijenti, prodavci, studenti
Objekti tipa mesto: skladita, zgrade, sobe
Objekti tipa stvari: proizvod, vozilo, oprema, DVD
Objekti tipa dogaaj: porudbina, plaanje, raun, aplikacija,
registracija, rezervacija

Koji su objekti hotela?


Koji su objekti turistike agencije?
Koji su objekti univerziteta?

Poslovna
informatika

Osnovni koncepti modela


podataka - ATRIBUT
Atribut je osobina ili karakteristika objekta.

Koji su atributi hotela?


Koji su atributi turistike agencije?
Koji su atributi univerziteta?

Prof. dr Angelina
Njegu

Poslovna
informatika
Prof. dr Angelina
Njegu

Osnovni koncepti modela


podataka
Tip podatka definie koja klasa podataka moe biti skladitena u taj atribut
TIP PODATKA

Domen definie koje vrednosti moe da ima jedan atribut

Difoltna vrednost je ona vrednost koja e biti uskladitena za dati atribut


ukoliko je korisnik ne promeni

Poslovna
informatika

Osnovni koncepti modela


podataka - KLJU

Prof. dr Angelina
Njegu

Jedan ili vie atributa ija vrednost jedinstveno identifikuje jednu istancu
objekta ili jedan red (zapis) u tabeli

Osobine: jedinstvenost i neredundantnost

U jednom objektu moe postojati vie razliitih atributa koje zadovoljavaju


definiciju kljua - svi se nazivaju kandidati za klju.

ZAPOSLENI

Primarni
klju

Alternativn
i kljuevi

Na primer, objekat ZAPOSLENI se moe jedinstveno


identifikovati preko matinog linog broja, broja line
ifra zaposlenogkarte, e-mail adrese ili preko ifre zaposlenog. Svaki
od ovih atributa se nazivaju kandidati za klju.
Kandidati za klju su kandidati za primarni klju.
Ime

Prezime
JMBG
Adresa
Broj line karte
Tel
E-mail

Primarni klju je kandidat za klju koji e


se najee koristiti da jedinstveno
identifikuje objekte.
Svi drugi kandidati za klju koji nisu izabrani
za primarni klju se zovu alternativni

Poslovna
informatika
Prof. dr Angelina
Njegu

Primarni klju

(Primary Key)

Osnovna namena kljua: pretraivanje i izvlaenje podataka iz baze


podataka

Ako je klju definisan samo jednim atributom, onda je to prost klju, a


ukoliko je definisan sa vie atributa, onda je to sloeni klju.

Sloeni
klju

Grupa atributa koja jedinstveno identifikuju objekat se zove sloeni


klju.

Poslovna
informatika
Prof. dr Angelina
Njegu

Kako odreujemo primarne


kljueve?
Primarni klju mora da bude jedinstven, ija vrednost se nee menjati
tokom vremena i koji e biti lak za unos i pretragu

Izbegavajte da Nazivi budu primarni kljuevi!

Primarni klju treba da bude logian i intuitivan

Na primer, za objekat Student, mogli smo da uzmemo JMBG ili Broj line karte
za primarni klju

Zato nismo? - Zato to JMBG ima 13 cifara, naporno je za unoenje i iz njega


moemo eventualno saznati kada je student roen, a taj podatak nam nije
vaan za na informacioni sistem. Najbolje je da odredimo novi atribut, npr.
Broj indeksa iz koga emo saznati koje godine je student upisan, pod kojim
rednim brojem, ukoliko se upisao direktno na treu godinu imae rimsko tri
ispred broja indeksa i ukoliko je DLS student imae oznaku E ispred broja
indeksa, npr. E-III-12/2011.

Ukoliko nijedan postojei atribut objekta nije pogodan za primarni klju,


dodajte novi atribut, ije vrednosti ete jedinstveno odrediti

Obino se pored naziva primarnog kljua dodaje oznaka ID, to je


akronim od Identification i ukazuje na atribut koji slui za identifikaciju,
odnosno da je klju.

Poslovna
informatika
Prof. dr Angelina
Njegu

Strani ili spoljni kljuevi

Objekti ne ekzistiraju sami ve moraju biti u nekoj relaciji ili vezi


sa drugim objektima.

Objekti se povezuju pomou spoljnjeg kljua

Spoljni (ili strani, preneseni) klju (Foreign Key) je atribut ili


grupa atributa jednog objekta, ija se vrednost koristi za
povezivanje sa vrednou primarnog kljua u drugom objektu.

Primarni klju
Spoljni klju

Poslovna
informatika
Prof. dr Angelina
Njegu

Osnovni koncepti modela


podataka
Tip veze definie minimalni i maksimalni broj dogaaja jednog
TIP
VEZE
objekta
koji se nalazi u konkretnoj relaciji sa drugim objektom

Tip veze moe biti:

1:1 (jedan prema jedan)

1: (jedan prema vie)

:1 (vie prema jedan)

: (vie prema vie)

Poslovna
informatika

Problem relacije vie-premavie

Prof. dr Angelina
Njegu

Tip veze vie prema vie nije dozvoljen u bazi podataka!

Ovaj problem se reava dodavanjem meuobjekta koja sadri primarne


kljueve objekata izmeu kojih je nastao

Poslovna
informatika
Prof. dr Angelina
Njegu

Kako odreujemo strani klju?


Najkritiniji deo posla!
Potrebno je proi kroz sledea pitanja:
1. Koje objekte treba povezati?
2. Da li su veze izmeu objekata zavisne ili
nezavisne?
3. Koji je tip veze izmeu objekata, da li je:

1:1 (jedan prema jedan)

1: (jedan prema vie)

:1 (vie prema jedan)

: (vie prema vie)?

Poslovna
informatika
Prof. dr Angelina
Njegu

1. Koje objekte treba povezati?


Nikada ne treba direktno povezivati objekte tipa osobe,
npr. Zaposleni sa Gostima!
Zato? - Zato to se izmeu njih uvek deava neki dogaaj, npr.
Rezervacija
Postavite pitanje: ta je razlog njihovog susreta? - Ti objekti e biti
povezani preko tog dogaaja!

Postavite pitanje: Da li je povezivanje nekih objekata bitno za


bazu podataka koju pravite?
Ukoliko pravite bazu podataka turistike agencije, da li ete povezati
Zaposlene sa Hotelima? ije zaposlene vi elite da pamtite u vaoj
bazi? Da li zaposlene u hotelu ili bazu zaposlenih u turistikoj agenciji?
Zaposleni u turistikoj agenciji su povezani sa hotelima preko nekog
dogaaja, npr. kada prave rezervaciju tog hotela ili sl.

Poslovna
informatika
Prof. dr Angelina
Njegu

2. Da li su veze izmeu objekata


zavisne ili nezavisne?

ta znai da su objekti zavisni jedan od drugog?

Da li je SOBA zavisna od HOTELA?


Postavite pitanje? Ako obriem konkretan hotel, da li elim da se i njegove sobe obriu iz
baze?
Ako je odgovor DA, onda su tabele ZAVISNE jedna od druge.

Pogledajmo drugi primer: Da li su HOTELI zavisni od KATEGORIZACIJE?


Postavite pitanje? Ako obriem konkretan hotel iz baze, npr. hotel Hyatt, da li to znai da
u obrisati 5 zvezdica iz Kategorizacije?
Ako obriem, ta je sa ostalim hotelima koji su takoe 5*?
Oigledno neemo brisati! to znai da su ovi objekti NEZAVISNI.

ta mi znai informacija, da li su objekti zavisni ili nezavisni?

Ukoliko su objekti zavisni onda e zavisan objekat naslediti primarni klju


objekta od koga zavisi i taj klju e stajati meu primarnim kljuevima zavisnog
objekta, npr. poto SOBE zavise od HOTELA, one e naslediti primarni klju hotela
HotelID i on e stajati meu njegovim primarnim kljuevima, tj. HotelID e biti
deo primarnog kljua objekta SOBE. Znai SOBE e imati sloen primarni klju
HotelID i BrojSobe

Ukoliko su objekti nezavisni onda e primarni klju, koji se prenosi u drugu tabelu
sa kojom se povezuje, stajati meu ostalim nekljunim atributima.

Poslovna
informatika

3. Koji je tip veze izmeu


objekata?

Prof. dr Angelina
Njegu

Ukoliko je tip veze 1: onda onaj objekat kod koga je vie ili
nasleuje primarni klju tabele sa kojom se povezuje

Npr. povezujete SOBU sa VRSTOM_SOBE

Postavite sledee pitanje: Da li jedna konkretna soba moe biti


vie vrsta sobe? Ovo bi znailo da li konkretna soba broj 5 u
hotelu Hyatt moe biti i jednokrevetna i dvokrevetna itd.?
Odgovor je da ne moe. to znai da jedna konkretna soba
moe biti samo jedne vrste.

Postavite sledee pitanje: Da li u jedna konkretna vrsta sobe (npr.


Apartman) moe da sadri vie soba? Odgovor je da moe, jer
moemo imati vie npr. jednokrevetnih soba. Znai da je vie na
strani objekta Sobe, to znai da e Sobe preuzeti primarni klju
objekta VrstaSobe i na taj nain e Sobe imati spoljni klju:
VrstaSobeID.

Poslovna
informatika
Prof. dr Angelina
Njegu

ta je strani klju?
Strani klju u jednom objektu, npr. SOBA, je preneseni
primarni klju objekta, npr. VRSTA SOBE, sa kojim je objekat
SOBA povezan!
Kod objekta SOBA:
Primarni klju je BrSobeID i HotelID
Strani klju je VrstaSobeID (FK - foreign key)

Poslovna
informatika
Prof. dr Angelina
Njegu

Slab objekat

Ukoliko postoji potreba da se ponavljaju vrednosti jednog atributa


u okviru odreenog objekta, tada se takav atribut izdvaja i formira
se slab objekat.

Na primer, za objekat zaposleni koji ima atribut telefon, elimo da


pamtimo vie telefona. Tada emo napraviti slab objekat telefon koji e
naslediti primarni klju svog nad objekta

Poslovna
informatika
Prof. dr Angelina
Njegu

Generalizacija/specijalizacija

Generalizacija je
tehnika gde se objekti
sa zajednikim
atributima, vezama
i/ili operacijama,
grupiu (generalizuju)
u jedan objekat koji se
zove nadtip.

Inverzni postupak,
gde se za neki tip
objekta, definiu
njegovi podtipovi, koji
imaju neke njima
specifine atribute,
veze i/ili operacije, je
specijalizacija.

Veza izmeu
nadobjekta i
podobjekta je 1:1

Poslovna
informatika

Kako itate ovaj dijagram?

Prof. dr Angelina
Njegu

Poslovna
informatika

Poreenje razliitih notacija


modela

Prof. dr Angelina
Njegu

Poslovna
informatika
Prof. dr Angelina
Njegu

ta je objekat, a ta tabela?
Termin objekat se koristi kod logikog modelovanja
baze podataka
Termin tabela se koristi kod fizikog modela baze, tj.
kod njene implementacije u nekom od konkretnih
sistema za upravljanje bazom podataka - Jer onda na
objekat lii na tabelu, tj. on i jeste tabela.
Atributi objekta predstavljaju zaglavlja tabele, tj.
nazive kolona
Vrednosti atributa se popunjavaju u redovima tabele
Redove tabele esto nazivamo zapisima ili rekordima

Poslovna
informatika
Prof. dr Angelina
Njegu

Primer logikog modela podataka i


odgovarajue implementacije objekata

Poslovna
informatika
Prof. dr Angelina
Njegu

Veba

Napraviti
logiki
model
baze
podataka
za
porudbin
u
proizvoda

29

Poslovna
informatika
Prof. dr Angelina
Njegu

Veba
Na osnovu korisnikog zahteva, napraviti
logiki model baze podataka za DVD
klub
Zahtev: elim u bazi podataka da imam
evidenciju svojih partnera od kojih nabavljam
filmove, bazu svih filmova, koje mogu da
pretraujem po anrovima i reiserima,
evidenciju o svim DVD-jevima na kojima se
nalaze kopije filmova, evidenciju o lanovima
kluba i njihovim iznajmljivanjima
30

Poslovna
informatika

Organizacija podataka u bazama


podataka

Prof. dr Angelina
Njegu

Poslovna
informatika

Koraci projektovanja baze


podataka

Prof. dr Angelina
Njegu

Poslovna
informatika
Prof. dr Angelina
Njegu

Implementacija baze
podataka
Nakon to smo kreirali logiki model baze podataka, gde se vide svi
objekti, njihovi, pravilno odreeni atributi, primarni kljuevi i strani
kljuevi, naredni korak je da se tako modelirana baza podataka unese u
Sistem za upravljanje bazom podataka

Sistem za upravljanje bazom podataka koji ete izuavati na ovom


predmetu je Microsoft Access

Zato je potrebno prvo kreirati model baze, pa tek onda ga uneti


u Access?

Da li je mogue direktno kreirati bazu u Accessu?


Kada otvorite Access on e traiti od vas da unesete sve
atribute sa njihovim primarnim i stranim kljuevima!

Ako niste prethodno skicirali model podataka, ve direktno unosili svojevoljno


atribute u Access vaa baza podataka u 90% sluajeva nee dobro raditi
jedino ukoliko niste viegodinji ekspert u razvoju baza podataka ili ukoliko
radite samo sa dva ili tri objekta

Poslovna
informatika
Prof. dr Angelina
Njegu

Sistem za upravljanje bazom podataka


(DBMS)
Sistem za
upravljanje bazom
podataka (Database
Management
Systems, DBMS) je
softverski sistem koji
kreira, pristupa,
upravlja, kontrolie,
uva i pretrauje
podatke
Poznatiji sistemi za
upravljanje bazom
podataka su:
Microsoft Access
SQL Server
IBM DB2
Oracle 11g

Poslovna
informatika
Prof. dr Angelina
Njegu

Poloaj DBMS-a

Poslovna
informatika
Prof. dr Angelina
Njegu

Funkcije DBMS-a

Organizacija podataka
rukovanje tabelama

Povezivanje tabela
Relationship i upiti

Unos i ureivanje podataka projektovanje i


implementacija obrazaca ili ekranskih formi za
pregled, unos i ureivanje podataka

Prikazivanje podataka izrada izvetaja koji mogu


da sumiraju podatke u skupovima zapisa. Njih moete
da pregledate, tampate ili objavljujete na internetu

obuhvata

izdvajanje

izradu

podataka

Poslovna
informatika
Prof. dr Angelina
Njegu

Primena baza podataka


Lina upotreba:
adresar/telefonski imenik, kalendar zakazanih
sastanaka
lista obaveza, obavetenja razliite prirode

Poslovna primena:
Poslovna reenja (ERP, CRM )
Inteligentna reenja (BI)
Geografski informacioni sistemi (GIS)

U istraivake svrhe i mnoge druge


svakodnevne primene

Das könnte Ihnen auch gefallen