BAZE PODATAKA - . semestar/Baze podatak · Model baze podataka Sredstvo za prikazivanje objekata sustava,

  • View
    232

  • Download
    5

Embed Size (px)

Text of BAZE PODATAKA - . semestar/Baze podatak · Model baze podataka Sredstvo za prikazivanje objekata...

  • BAZE PODATAKAVjeba 1

  • mag. ing. Denis tajduhar

    dstajduh@fesb.hr

    @B414

    Vjebe:

    @B525

    10 vjebi: 5 - teorija

    5 PostgreSQL

    1 izostanak dodatna teorijska pitanja na

    obrani seminarskog rada

    2 izostanka dodatni projekt

    3,4,... izostanka javiti se prof. Papiu

    Seminarski rad:

    Grupe po 2 studenta

    Popis tema za seminarske radove na

    portalu

    Do 22.10. dogovoriti grupe i teme

    Do 15.01. predati gotov seminarski

    rad (dokumentaciju i bazu poslati

    na mail dstajduh@fesb.hr)

    21.01. prezentacije seminarskih

    radova

  • SUSTAVI ZA UPRAVLJANJE

    BAZAMA PODATAKA

  • Baza podataka

    Skup meusobno povezanih podataka, pohranjenih

    u vanjskoj memoriji raunala.

    Podaci su istovremeno dostupni raznim korisnicima

    i aplikacijskim programima.

    Podaci nisu razbacani po nezavisnim datotekama

    nego su organizirani u jedinstvenu strukturu baze

    podataka.

  • Koraci u projektiranju baze

    podataka

    Analiza podataka

    Modeliranje podataka

    Pretvaranje modela podataka u relacije

    Baza podataka

  • Model baze podataka

    Sredstvo za prikazivanje objekata sustava, njihovih

    atributa i njihovih meusobnih veza.

    Hijerarhijski model

    Mreni model

    RELACIJSKI MODEL

    Objektni model

    ...

  • Entity-Relationship diagram

  • Ono o emu elimo spremati podatke.

    Skup objekata koji imaju neka zajednika svojstva.

    Entitet moe biti objekt ili bie (npr. kua,

    student,...) odnosno dogaaj ili pojava (npr.

    nogometna utakmica, praznik, ...).

    Entitet

    ENTITET

  • Atribut

    Entitet je opisan nizom atributa.

    Ukoliko neki atribut i sam zahtjeva svoje atribute,

    tada ga se treba smatrati novim entitetom.

    Izborom atributa izraava se ono to nas u

    realnom svijetu zanima.

    ATRIBUT

  • Primarni klju

    Za svaki entitet moramo izabrati primarni klju.

    Primarni klju je minimalni set atributa koji

    jednoznano odreuje jedan entitet.

    Npr. za tip entiteta AUTOMOBIL, kandidat za

    primarni klju je atribut REGISTRACIJSKI_BROJ.

    ATRIBUT

  • Veza

    Veza predstavlja odnos izmeu dva ili vie entiteta.

    Veza moe sadravati opisne atribute koji opisuju

    odnos izmeu entiteta.

    VEZA

  • Funkcionalnost veza

    Naini na koji veza moe povezati primjerke

    entiteta odreeni su svojstvima funkcionalnosti,

    obaveznosti lanstva, odnosno kardinalnosti.

    Funkcionalnost je svojstvo koje kae moe li se

    veza interpretirati kao preslikavanje (funkcija) iz

    skupa primjeraka entiteta jednog tipa u skup

    primjeraka entiteta drugog tipa.

    Funkcionalnost veze moe biti:

    1:1

    1:N

    N:M

  • Funkcionalnost veza

    Jedan-naprama-jedan ( 1 : 1 )

    Jedan primjerak prvog tipa

    entiteta moe biti u vezi s

    najvie jednim primjerkom

    drugog tipa entiteta.

    Takoer, jedan primjerak drugog

    tipa entiteta moe biti u vezi s

    najvie jednim primjerkom

    prvog tipa entiteta.

    STUDENT

    INDEKS

    DODJELJENO

    1

    1

  • Funkcionalnost veza

    Jedan-naprama-mnogo ( 1 : N )

    Jedan primjerak prvog tipa

    entiteta moe biti u vezi s 0,1 ili

    vie primjeraka drugog tipa

    entiteta.

    No, jedan primjerak drugog tipa

    entiteta moe biti u vezi s

    najvie jednim primjerkom

    prvog tipa entiteta.

    NASTAVNIK

    KOLEGIJ

    PREDAJE

    1

    N

  • Funkcionalnost veza

    Mnogo-naprama-mnogo ( M : N )

    Jedan primjerak prvog tipa

    entiteta moe biti u vezi s 0,1 ili

    vie primjeraka drugog tipa

    entiteta.

    Takoer, jedan primjerak drugog

    tipa entiteta moe biti u vezi s

    0,1 ili vie primjeraka prvog tipa

    entiteta.

    STUDENT

    KOLEGIJ

    UPISAO

    M

    N

  • Potrebno je napraviti bazu podataka za fakultet u

    kojoj e se voditi evidencija o studentima koji su

    upisali pojedini kolegij, o nastavnicima koji predaju

    na pojedinom kolegiju, te o zavodu na kojem se

    nalazi pojedini kolegij.

  • Zadatak 1Cilj nam je napraviti bazu podataka za voenje evidencija o osobnoj

    kolekciji filmskih naslova koje posjedujemo. Za svaki filmski naslov eljeli

    bismo moi pohraniti osnovne informacije o filmu, poput naziva filma,

    kratkog sadraja, trajanja, anra kojem pripada i sl. Kao i informacije o

    osobi koja je film reirala te glumcima koji se u njemu pojavljuju, odnosno

    ulogama koje su ostvarili.

    Neka od pitanja na koja bismo pomou spomenute baze trebali moi

    odgovoriti su:

    Tko je sve glumio u odreenom filmu?

    Tko je reirao odreeni filmski naslov?

    Kojem anru pripada odreeni filmski naslov?

    Koja je duljina trajanja odreenog filma?

    Kako glasi izvorni naslov odreenog filma?

    U kojim je sve filmovima glumio odreeni glumac?

    Koje sve filmove odreenog anra posjedujemo?

  • Zadatak 1

  • Sloeni oblici u ER-modelima

    Slabi entiteti

    Involuirane veze

    Pod-tipovi

    Ternarne veze

    Agregacija

  • Slabi entitet

    SLABI ENTITET

    Entiteti koji ovise o nekim drugim entitetima.

  • Slabi entitet

    Jednoznanost slabog entiteta postie se

    kombiniranjem nekog od njegovih atributa sa

    kljuem nekog drugog atributa

    Skup entiteta iz kojeg uzimamo primarni klju

    naziva se identificirajui vlasnik slabog entiteta

    (eng. identifying owner)

    Identificirajui vlasnik slabog identiteta vezuje se sa

    slabim entitetom vezom tipa 1:N

    Svi elementi slabog entiteta imaju obavezno

    lanstvo u identificirajuem skupu veza

  • Involuirane veze

    Povezuje jedan tip entiteta sa tim istim tipom

    Binarni odnos

  • Pod-tipovi

    Tip entiteta E1 je

    podtip tipa entiteta

    E2 ako je svaki

    primjerak od E1

    takoer i primjerak od

    E2

    E1 nasljeuje sve

    atribute od E2, no E1

    moe imati i dodatne

    atribute

  • Ternarne veze

    Uspostavljaju se izmeu tri tipa entiteta

    Ternarni odnos

  • Agregacija

    Veza izmeu skupa entiteta i skupa veza

    Agregaciju koristiti kada imamo potrebu

    uspostaviti vezu sa nekom drugom postojeom

    vezom

    Agregacijom veze tretiramo kao entitete vieg

    reda (apstraktni entitet)

  • Agregacija

  • Zadatak 2

    (Nastavak prvog zadatka) No, to ako u svojoj kunoj kolekciji, osim

    filmskih naslova, posjedujemo i razliite televizijske serije te bismo

    takoer eljeli moi doi do odgovora na pitanja poput:

    Koliko sezona odreene televizijske sezone posjedujemo?

    Koliko epizoda odreene sezone odreene televizijske serije

    posjedujemo?

    Tko sve glumi u pojedinoj sezoni odreene televizijske serije?

    Tko sve glumi u odreenoj epizodi odreene sezone odreene

    televizijske serije?

    Tko je sve reirao epizode u pojedinoj sezoni odreene televizijske

    serije?

    Koliko traje odreena epizoda odreene sezone odreene televizijske

    serije?