Auditorna vježba 1

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: