Upload
sarapavin
View
241
Download
2
Embed Size (px)
DESCRIPTION
+
Citation preview
Baze podataka
Auditorna vjeba 1
10/6/2015 2
Osnovni podaci
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
Sadraj predmeta
10/6/2015 3
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
Sadraj predmeta
10/6/2015 4
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
Sadraj predmeta
10/6/2015 5
Sustav za upravljanje
bazom podataka
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.)
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 6
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 7
Model podataka
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.
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 8
Modeli baze podataka
Danas poznajemo slijedee modele:
Hijerarhijski - stablo
Mreni - graf
Relacijski - tablice
Objektni - OOP
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 9
Relacijski model
R IME PREZIME SPORT DRAVA
1 Draen Petrovi KOARKA HRVATSKA
2 Slaven Bili NOGOMET HRVATSKA
3 Patrik avar RUKOMET HRVATSKA
4 Michael Jordan KOARKA AMERIKA
5 Mike Tyson BOKS AMERIKA
6 Ben Johnson ATLETIKA AMERIKA
Primarni
klju
Atributi
Relacijska
shema
n-torka
Tijelo
relacije
Vrijednosti
atributa:
PREZIME
10/6/2015 10
Zahtjevi
Neovisnost podataka fizika i logika neovisnost
Zatita integriteta konzistentnost i tonost
Univerzalan pristup SQL, JDBC, ODBC
Optimizacija i efikasnost brzina obrade
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 11
Zahtjevi
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
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 12
Arhitektura
Poznajemo 3 razine apstrakcije:
fizika razina
fizika pohrana podataka na mediju
konceptualna (logika) razina
logiki opis (shema) cijele baze podataka
bitno za razvoj aplikacija
korisnika razina
individualan korisniki pogled na podatke
moe se bitno razlikovati od sheme baze podataka
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 13
Grafiki prikaz
Fizika shema
Fizika razina
Relacijska
shema Logika razina
Aplikacija Terminal Aplikacija
Pogled 1 Pogled 2 Pogled 3
Korisnika razina Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 14
Relacijsko modeliranje
podataka
Model entiteta i veza
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
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 15
Model entiteta i veza (E-
R model)
(engl. Entity-Relationship Model)
Chen, 1976
Grafiki prikaz entiteta i veza
E-R dijagram
Odlikuje se jednostavnou i izraajnou
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 16
Entitet
Opi pojam (objekt, proces, pojava) koji moemo jednoznano odrediti, a o kojemu u bazi podataka uvamo podatke
Naziv entiteta zajedno sa svojim atributima tvori tip entiteta unutar
kojega moe postojati vie instanci entiteta
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 17
Entitet
U grafikom prikazu se prikazuje pravokutnikom unutar kojega je
upisan naziv tipa entiteta
Primjer:
Automobil
Osoba Projekt
Kua
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 18
Atribut
Karakteristika (svojstvo) koje poblie opisuje entitet
Moe poprimiti vrijednost iz odreenog skupa vrijednosti koji predstavlja domenu (tip vrijednosti)
tog atributa
Atribut ili skup atributa koji jednoznano odreuje svaku instancu entiteta se naziva kandidat za klju tipa entiteta
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 19
Atribut
Grafiki se prikazuje elipsom unutar koje je upisan naziv
atributa
kandidat(i) za klju je podvuen
Naziv Veliina
Ime Cijena
JMBG
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 20
Veza
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
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 21
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)
Tip veze - skup veza iste vrste
Grafiki se prikazuje rombom unutar kojega pie naziv tipa veze
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 22
Veza
Primjer (spojnost):
Posjeduje 1 N
Pie N M
Radi u N 1
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
Radi u N 0
10/6/2015 23
Veza
Primjer (stupanj):
binarna veza:
ternarna veza:
refleksivna veza:
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 24
Paralelna veza
Meu entitetima moe postojati paralelna veza
Paralelna veza moe biti dvostruka, trostruka, itd.
PBR_STAN
PBR_RMJ
PREZIME DJELATNIK MJESTO
STANUJE
RADI
N
N
1
1
IME
MBR
NAZIV
PBR
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 25
E-R dijagram
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.
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 26
E-R dijagram
Primjer 1:
Katedra
Predava
Student
Kolegij
Daje Vod
i
Pripad
a
Pohaa
Predaj
e
1 1
1
1
1
N
M
N N
N Nazi
v
Broj sati
JMBG Ime
JMBG
Ime Adresa
Naziv
Br. djelatnika
Godina
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 27
E-R dijagram
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).
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 28
E-R dijagram
Primjer 2:
KNJIGA
IZDAVA
AUTOR
UDK
NAZIV OZNAKA
GODIZD
ISBN
NAZIV
KNJIGA
NAZIV
OZNAKA
IME
AUTOR
PREZIME
IZDAO
NAPISAO
NOSI
M
N
N
N
1
1
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 29
Relacijski model
(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
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 30
Normalizacija
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
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 31
Relacija
Pravokutno podruje koje se sastoji od redova (slogova, n-
torki) i stupaca (atributa)
Podskup Kartezijevog produkta skupova
Karakteristike: stupanj - broj stupaca
kardinalnost - broj slogova
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 32
Primjer
Entitet: OSOBA
Atributi: IME PREZIME
domene:
Kartezijev produkt
svatko sa svakim
relacija
Pero Peri Pero Mari Marko Peri Marko Mari Ivan Peri Ivan Mari
Pero
Marko
Ivan
Peri Mari
Pero Peri Marko Mari
Ivan Mari
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 33
Relacija
Relacijska shema
imenovani skup atributa
ne sadri dva istoimena atributa
redoslijed atributa nije bitan
Relacija
definirana je nad relacijskom shemom
konaan skup n-torki
ne sadri dvije jednake n-torke
redoslijed n-torki nije bitan
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 34
Primjer:
IME MATBR MJESTO_RODarko 517 OsijekMarko 632 Varadin
Petar 727 Varadinarko 814 Zagreb
Shema relacije (zaglavlje)
Tijelo relacije
n-torka (slog)
stupac
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 35
Klju relacije
Primarni klju -Podskup atributa relacijske sheme koji jednoznano odreuje svaku pojedinu n-torku relacije
Funkcijski odreuje preostali dio relacije
Obavezno je poznat u potpunosti niti jedan atribut iz skupa koji ini klju
relacije ne smije sadravati vrijednost NULL
Jedinstveni klju - moe poprimiti vrijednost NULL
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 36
Adresibilnost
Svaki stupac relacije jednoznano je odreen nazivom atributa relacije
Svaki redak relacije jednoznano je odreen vrijednou kljua n-torke
Svaki pojedinani podatak baze podataka se moe jednoznano odrediti pomou:
naziva relacije, naziva atributa i vrijednosti kljua n-torke
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 37
Strani klju
Strani klju relacije R1 je atribut (ili podskup atributa) relacijske sheme
R1 koji moe poprimiti nul-vrijednost (NULL) ili vrijednost atributa koji je
primarni klju relacije R2
Atributi koji tvore strani klju relacije R1 moraju biti definirani nad istim
domenama kao i atributi koji tvore
primarni klju relacije R2
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 38
Ogranienja
Spreavanje unoenja pogrenih ili nedozvoljenih podataka u
bazu podataka
Definiraju se nad atributima relacijske sheme
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
10/6/2015 39
Pretvorba iz E-R sheme
u relacijsku
Openito vrijedi: Svaki tip entiteta prikazuje se jednom relacijom.
Atributi tipa postaju atributi relacije.
Jedan primjerak entiteta prikazan je jednom n-torkom.
Primarni klju entiteta postaje primarni klju relacije.
Baza
podataka
SUBP
Relacijsko
modeliranje
Model
entiteta i
veza
Relacijski
model
Relacija
NULL
vrijednost
Relacijska
algebra
DJELATNIK
MATBR
IME
PREZIME
RELACIJSKI MODEL:
DJELATNIK (MATBR, PREZIME, IME)
10/6/2015 40
Pretvorba binarnih veza: 1:1
DJELATNIK RadiNa PROJEKT 1 N
MATBR
IME
PREZIME
NAZIV
OZNAKA
MATBR OZNAKA
DJELATNIK (MATBR, PREZIME, IME)
PROJEKT (OZNAKA, NAZIV, MATBR)
ER MODEL:
RELACIJSKI MODEL:
10/6/2015 41
Pretvorba binarnih veza: 1:N
DJELATNIK RadiNa PROJEKT 1 N
MATBR
IME
PREZIME
NAZIV
OZNAKA
MATBR OZNAKA
DJELATNIK (MATBR, PREZIME, IME)
PROJEKT (OZNAKA, NAZIV, MATBR)
ER MODEL:
RELACIJSKI MODEL:
10/6/2015 42
Pretvorba binarnih veza: N:M
DJELATNIK RadiNa PROJEKT N M
MATBR
IME
PREZIME
NAZIV
OZNAKA
MATBR OZNAKA
DJELATNIK (MATBR, PREZIME, IME)
PROJEKT (OZNAKA, NAZIV)
ER MODEL:
RELACIJSKI MODEL:
RadiNa (OZNAKA, MATBR)
10/6/2015 43
Primjer - refleksivna veza
ODJEL ImaNad
1
N
NAZIV
SIFODJEL
ODJEL (SIFODJEL, SIFNADODJEL, NAZIV)
RELACIJSKI MODEL:
SIFNADODJEL
SIFODJEL
ER MODEL: