You are on page 1of 43

Baze podataka

Auditorna vjeba 1

Osnovni podaci
Sadraj
predmeta

7 termina auditornih vjebi


2 termina rezervirana za KZ
Potrebno imati minimalno 50%
bodova zbrojeno iz obje
kontrolne zadae
Na 1. KZ potrebno je imati
minimalno 5 bodova od moguih
25 da bi pristupili na 2. KZ
10/6/2015

Sadraj predmeta
Sadraj
predmeta

Uvod u relacijske baze podataka

relacijska baza podataka


relacija, entitet, veza, atribut
E-R dijagram
normalne forme
primarni klju, strani klju
NULL vrijednost, obavezni i
opcionalni atribut

10/6/2015

Sadraj predmeta
Sadraj
predmeta

SQL jezik
osnovne naredbe
sintaksa, primjeri, zadaci

sloene naredbe

sintaksa, primjeri, zadaci

JDBC & ODBC

programska interakcija s bazom


podataka
primjer: Java aplikacija

Zadaci
10/6/2015

Sustav za upravljanje
bazom podataka
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

skraeno SUBP, engl. Database


Management System (DBMS)
Aplikacija (engl. software) je
sposobna upravljati radom jedne
ili vie baza podataka (MySQL,
MS SQL Server, Oracle, SAP,
itd.)
10/6/2015

SUBP ima niz funkcija:


Funkcije za definiranje baze
podataka (engl. Data Definition). One
slue za unos naziva, tipa i formata
svakog podatka.
Funkcije za manipulaciju podacima
(engl. Data Manipulation).
Upravljake funkcije funkcije
sigurnosti, praenja rada i integriteta
baze podataka
10/6/2015

Model podataka
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Podaci u bazi podataka su


organizirani prema odreenom
modelu podataka (engl. data
model). On je osnova sustava i
prema njemu se definiraju
dizajn, podaci i veze meu
podacima te razvojno okruenje.
10/6/2015

Modeli baze podataka


Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost

Danas poznajemo slijedee


modele:

Hijerarhijski - stablo
Mreni - graf
Relacijski - tablice
Objektni - OOP

Relacijska
algebra

10/6/2015

Relacijski model
Primarn
i
klju

Atribut
i

Relacijsk
a
shema

IME

PREZIME

SPORT

DRAVA

Draen

Petrovi

KOARKA

HRVATSKA

n-torka

Slaven

Bili

Patrik

avar

Michael

Jordan

Mike

Tyson

BOKS

AMERIKA

Ben

Johnson

ATLETIKA

AMERIKA

Vrijednosti
atributa:
PREZIME

10/6/2015

NOGOMET HRVATSKA
RUKOMET HRVATSKA Tijelo
relacije
KOARKA
AMERIKA

Zahtjevi
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Neovisnost podataka
fizika i logika neovisnost

Zatita integriteta

konzistentnost i tonost

Univerzalan pristup
SQL, JDBC, ODBC

Optimizacija i efikasnost
brzina obrade
10/6/2015

10

Zahtjevi
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Zatita podataka
autorizacija pristupa bazi, kontrola
pristupa podacima

Administracije i kontrola

centralizirana administracija
sustava, iscrpna dokumentacija
repozitorij podataka (engl. Data
Dictionary)
podaci o podacima, meta podaci
10/6/2015

11

Arhitektura
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza

Poznajemo 3 razine apstrakcije:


fizika razina
fizika pohrana podataka na mediju

konceptualna (logika) razina


logiki opis (shema) cijele baze podataka
bitno za razvoj aplikacija

Relacijski
model

Relacija

korisnika razina

NULL
vrijednost

individualan korisniki pogled na podatke


moe se bitno razlikovati od sheme baze
podataka

Relacijska
algebra

10/6/2015

12

Grafiki prikaz
Aplikacija

Terminal

Aplikacija

Korisnika razina
Baza
podataka

Pogled 1

SUBP

Pogled 2

Pogled 3

Relacijsko
modeliranje

Relacijska
shema

Model
entiteta i
veza

Logika razina

Relacijski
model

Fizika shema

Relacija
NULL
vrijednost

Fizika razina

Relacijska
algebra

10/6/2015

13

Relacijsko modeliranje
podataka
Baza
podataka

Model entiteta i veza

SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost

Dizajn konceptualne sheme koja


predstavlja apstrakciju realnog svijeta
entitet, atribut, veza

Relacijski model
Dizajn logike strukture (prema modelu
entiteta i veza) koja se moe preslikati u
fiziku implementaciju
relacija

Relacijska
algebra

10/6/2015

14

Model entiteta i veza (ER model)


Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost

(engl. Entity-Relationship Model)


Chen, 1976

Grafiki prikaz entiteta i veza


E-R dijagram

Odlikuje se jednostavnou i
izraajnou

Relacijska
algebra

10/6/2015

15

Entitet
Opi pojam (objekt, proces, pojava)
koji moemo jednoznano odrediti, a
SUBP
Relacijsko
o kojemu u bazi podataka uvamo
modeliranje
Model
podatke
entiteta i
veza
Relacijski Naziv entiteta zajedno sa svojim
model
atributima tvori tip entiteta unutar
Relacija
NULL
kojega moe postojati vie instanci
vrijednost
entiteta
Relacijska
Baza
podataka

algebra

10/6/2015

16

Entitet
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza

U grafikom prikazu se prikazuje


pravokutnikom unutar kojega je
upisan naziv tipa entiteta
Primjer:

Relacijski
model

Automobil

Kua

Osoba

Projekt

Relacija
NULL
vrijednost
Relacijska
algebra

10/6/2015

17

Atribut
Karakteristika (svojstvo) koje poblie
opisuje entitet
SUBP
Relacijsko
Moe poprimiti vrijednost iz
modeliranje
odreenog skupa vrijednosti koji
Model
entiteta i
veza
predstavlja domenu (tip vrijednosti)
Relacijski
tog atributa
model
Relacija
Atribut ili skup atributa koji
NULL
vrijednost
jednoznano odreuje svaku instancu
Relacijska
entiteta se naziva kandidat za klju
algebra
tipa entiteta
Baza
podataka

10/6/2015

18

Atribut
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza

Grafiki se prikazuje elipsom


unutar koje je upisan naziv
atributa
kandidat(i) za klju je podvuen

Relacijski
model

Naziv

Veliina

Ime

Cijena

Relacija
NULL
vrijednost
Relacijska
algebra

JMBG
10/6/2015

19

Veza
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Ono to opisuje odnos meu


entitetima
Stupanj veze - broj entiteta koje
promatrana veza povezuje
binarna, ternarna, itd.
refleksivna - kada jedan entitet u
vezi ima dvije razliite uloge
10/6/2015

20

Veza
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza

Spojnost veze - opisuje ogranienja


preslikavanja pojedinanih entiteta
koji sudjeluju u promatranoj vezi
1:1, 1:N, N:1, N:M
openito govorei mogue je i da u nekoj vezi
pojedine instance nekog entiteta ne sudjeluju
(1:0, 0:N)

Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Tip veze - skup veza iste vrste


Grafiki se prikazuje rombom unutar
kojega pie naziv tipa veze
10/6/2015

21

Veza
Baza
podataka

Primjer (spojnost):

SUBP

Relacijsko
modeliranje

Posjeduje

Model
entiteta i
veza

Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

10/6/2015

Pie

1
Radi u
0
Radi u
22

Veza
Baza
podataka

Primjer (stupanj):

SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

binarna veza:
ternarna veza:

Relacija
NULL
vrijednost
Relacijska
algebra

refleksivna veza:
10/6/2015

23

Paralelna veza
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza

Meu entitetima moe postojati


paralelna veza
Paralelna veza moe biti
dvostruka, trostruka, itd.

Relacijski
model

Relacija
NULL
vrijednost

PBR_STAN

N
STANUJE

MBR

PREZIME

1
PBR

DJELATNIK

Relacijska
algebra

MJESTO

IME

RADI

NAZIV

PBR_RMJ
10/6/2015

24

E-R dijagram
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Primjer 1: Napraviti ER model


baze podataka za voenje
katedre. Na svakoj katedri nude
se razliiti kolegiji, a svaki
kolegij moe upisati vie
studenata. Na katedri su
zaposleni predavai koji predaju
nastavu na kolegijima.
10/6/2015

25

E-R dijagram
Baza
podataka

Primjer 1:

Naziv

SUBP

Model
entiteta i
veza
Relacijski
model

Relacija

Katedra

Br. djelatnika

Relacijsko
modeliranje

1
Broj sati

Predaj
e

Ime
10/6/2015

M
Student

1
1
Predava

N
Poha
a

Relacijska
algebra

Pripad
a

Vod
i

N
Kolegij

NULL
vrijednost

Daje

Nazi
v

JMBG
JMBG
Godina

Adresa

Ime
26

E-R dijagram
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Primjer 2: Napraviti ER model


baze podataka za voenje
knjiare. Za svaku knjigu vode
se podaci o izdavakoj kui,
autorima knjige te o UDK
(Univerzalna decimalna
klasifikacija).
10/6/2015

27

E-R dijagram
Baza
podataka

Primjer 2:

SUBP

IZDAVA

OZNAKA

Relacijsko
modeliranje
Model
entiteta i
veza

1
IZDAO

OZNAKA

Relacijski
model

Relacija

N
UDK

NOSI

NULL
vrijednost
Relacijska
algebra

NAZIV

NAPISAO
M
AUTOR

10/6/2015

NAZIV

KNJIGA
N

NAZIV

KNJIGA

ISBN
GODIZD

IME

AUTOR
PREZIME

28

Relacijski model
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

(engl. Relational Data Model)


Codd, 1970

Bazira se na relacijskoj teoriji


Korisniku predstavlja jednostavan
pogled na podatke u obliku
dvodimenzionalnih tablica
Postoji metodologija (skup pravila)
kojom se E-R model prevodi u
relacijski model
10/6/2015

29

Normalizacija
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

E. F. Codd: Normalized data base


structure: A brief tutorial

Normalne forme
1NF, 2NF, 3NF
Boyce-Coddova normalna forma (BCNF)

Cilj je oblikovati model s dobrim


svojstvima
redundancija (zalihost), semantike
pogreke kod izvoenja operacija
10/6/2015

30

Relacija
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost
Relacijska
algebra

Pravokutno podruje koje se


sastoji od redova (slogova, ntorki) i stupaca (atributa)
Podskup Kartezijevog produkta
skupova
Karakteristike:
stupanj - broj stupaca
kardinalnost - broj slogova
10/6/2015

31

Primjer
Baza
podataka

Entitet: OSOBA
Atributi: IME
domene:

SUBP
Relacijsko
modeliranje

Pero
Mark
o
Ivan

Kartezijev produkt

Model
entiteta i
veza

svatko sa svakim

Relacijski
model

Relacija
NULL
vrijednost

relacija

Relacijska
algebra

10/6/2015

PREZIME
Peri
Mari

Pero Peri
Pero Mari
Marko Peri
Marko Mari
Ivan Peri
Ivan Mari

Pero Peri
Marko
Mari
Ivan Mari

32

Relacija
Baza
podataka
SUBP

Relacijska shema
imenovani skup atributa
ne sadri dva istoimena atributa
redoslijed atributa nije bitan

Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Relacija
NULL
vrijednost

Relacija
definirana je nad relacijskom shemom
konaan skup n-torki
ne sadri dvije jednake n-torke
redoslijed n-torki nije bitan

Relacijska
algebra

10/6/2015

33

Primjer:
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza

Shema relacije
(zaglavlje)
Tijelo relacije

Relacijski
model

IME

MATBR MJESTO_RO

Darko
Marko
Petar
arko

517
632
727
814

Osijek
Varadin
Varadin
Zagreb

Relacija
NULL
vrijednost

n-torka
(slog)

Relacijska
algebra

10/6/2015

stupac

34

Klju relacije
Primarni klju -Podskup atributa
relacijske sheme koji jednoznano
SUBP
odreuje svaku pojedinu n-torku
Relacijsko
modeliranje
relacije
Model
Baza
podataka

entiteta i
veza
Relacijski
model

Funkcijski odreuje preostali dio relacije


Obavezno je poznat u potpunosti
niti jedan atribut iz skupa koji ini klju
relacije ne smije sadravati vrijednost NULL

Relacija
NULL
vrijednost
Relacijska
algebra

Jedinstveni klju - moe poprimiti


vrijednost NULL
10/6/2015

35

Adresibilnost
Svaki stupac relacije jednoznano je
odreen nazivom atributa relacije
SUBP
Relacijsko
modeliranje Svaki redak relacije jednoznano je
Model
odreen vrijednou kljua n-torke
entiteta i
veza
Relacijski Svaki pojedinani podatak baze
model
podataka se moe jednoznano
Relacija
NULL
odrediti pomou:
vrijednost
Baza
podataka

Relacijska
algebra

naziva relacije, naziva atributa i


vrijednosti kljua n-torke
10/6/2015

36

Strani klju
Strani klju relacije R1 je atribut (ili
podskup atributa) relacijske sheme
SUBP
Relacijsko
R1 koji moe poprimiti nul-vrijednost
modeliranje
Model
(NULL) ili vrijednost atributa koji je
entiteta i
veza
primarni klju relacije R2
Relacijski
model
Atributi koji tvore strani klju relacije
Relacija
NULL
R1 moraju biti definirani nad istim
vrijednost
domenama kao i atributi koji tvore
Relacijska
algebra
primarni klju relacije R2
Baza
podataka

10/6/2015

37

Ogranienja
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Spreavanje unoenja pogrenih


ili nedozvoljenih podataka u
bazu podataka
Definiraju se nad atributima
relacijske sheme

Relacija
NULL
vrijednost
Relacijska
algebra

10/6/2015

38

Pretvorba iz E-R sheme


u relacijsku
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model

Openito vrijedi:
Svaki tip entiteta prikazuje se jednom relacijom.
Atributi tipa postaju atributi relacije.
Jedan primjerak entiteta prikazan je jednom ntorkom.
Primarni klju entiteta postaje primarni klju
relacije.

Relacija
NULL
vrijednost
Relacijska
algebra

MATBR

IME

RELACIJSKI MODEL:
DJELATNIK (MATBR, PREZIME, IME)

PREZIME
10/6/2015

DJELATNIK

39

Pretvorba binarnih veza: 1:1


ER MODEL:
MATBR
IME
PREZIME

DJELATNIK

OZNAKA
MATBR

OZNAKA

NAZIV

N
RadiNa

PROJEKT

RELACIJSKI MODEL:
DJELATNIK (MATBR, PREZIME, IME)
PROJEKT (OZNAKA, NAZIV, MATBR)
10/6/2015

40

Pretvorba binarnih veza: 1:N


ER MODEL:
MATBR
IME
PREZIME

DJELATNIK

OZNAKA
MATBR

OZNAKA

NAZIV

N
RadiNa

PROJEKT

RELACIJSKI MODEL:
DJELATNIK (MATBR, PREZIME, IME)
PROJEKT (OZNAKA, NAZIV, MATBR)
10/6/2015

41

Pretvorba binarnih veza: N:M


ER MODEL:
MATBR
IME
PREZIME

DJELATNIK

OZNAKA
MATBR

OZNAKA

NAZIV

M
RadiNa

PROJEKT

RELACIJSKI MODEL:
DJELATNIK (MATBR, PREZIME, IME)
PROJEKT (OZNAKA, NAZIV)
RadiNa (OZNAKA, MATBR)
10/6/2015

42

Primjer - refleksivna veza


ER MODEL:
NAZIV
SIFODJEL

SIFNADODJEL

ODJEL

ImaNad
N

SIFODJEL

RELACIJSKI MODEL:
ODJEL (SIFODJEL, SIFNADODJEL, NAZIV)

10/6/2015

43

You might also like