Obdelava podatkov Baze podatkov 3 letnik 4 sreanje
Obdelava podatkov Baze podatkov 3. letnik 4. srečanje
Današnje naloge 1. Izdelava podatkovne baze 2. Vnos parih podatkov 3. Domača naloga
poslovni sistem Domača naloga upravljav informaci ski jski temeljn proces i proces • Izdelava podatkovne baze(? ) “od …” 1. globalni model 2. konceptualni model 3. logični model 4. fizični model • Kdaj se začne programska odvisnost?
Kako do modela (ad 1) 1. Analiza realnega procesa -> globalni model. 2. Določitev “enot” (entitet), ki nastopajo v tem procesu: konceptualni model (E-R). 3. Zapis logičnega modela (glede na SUPB) 4. Izdelava fizične podatkovne baze -> fizični model
Ponovitev • Kakšne vrste logičnih podatkovnih modelov smo omenili?
Hierarhični podatkovni model ODDELEK DEL_MESTO NASLOV ZAPOSLENI PLAČA VZDRŽEVANI
Mrežni podatkovni model ODDELEK DEL. _MESTO NASLOV PROJEKT ZAPOSLENI PLAČA VZDRŽEVANI
Relacijski podatkovni model • Primer 1: atribut relacija (celotna tabela) DIJAK VPIS_ŠT IME LETNIK SPOL NASLOV TEL_ŠT. 13012 Janko 1 M Strma 5 523343 13017 Marko 1 M Pod lipo 3 null 13021 Metka 2 Ž Ob reki 4 5434554 13067 Janko 1 M Na hribu 1 513456 n-terka
Relacijski podatkovni model – relacijska shema: • DIJAK (Vpis_št. #, Ime, Letnik, Spol, Naslov, Tel_št. ) ime relacije atributi – relacija r je množica n-terk (4) • r = {t 1, t 2, t 3, t 4} t 1 = (v 1, v 2, v 3, v 4, v 5, v 6) • npr. : v 2 je element domene (A 2) = {Janko, Marko, Metka} Prime DIJAK={(13012, Janko, 1, M, Strma, 523343), r: (13017, Marko, 1, M, Pod lipo 3, null), (13021, Metka, 2, Ž, Ob reki 4, 5434554), (13067, Janko, 1, M, Na hribu 1, 513456)}
Relacijski podatkovni model • Primer 2: • • ČLAN (Šifra_člana#, Ime, Priimek, Naslov, Poštna_št) POŠTA (Poštna_št#, Ime_pošte) KNJIGA (Šifra_knjige#, Naslov, Avtor) IZPOSOJA (Šifra_knjige+Šifra_člana+Datum_izposoje#, Datum vrnitve) POŠTA 1 N ČLAN 1 N IZPOSOJA N 1 KNJIGA
Relacijski podatkovni model ŠIFRA_ ČLANA IME PRIIMEK NASLOV POŠTNA_ ŠT POŠTNA_ŠT IME_ POŠTE 111 Aleš Knavs Glavni trg 2 3000 Celje 112 Julči Koren Prečna 3 3000 3320 Velenje 113 Jure Mirt Pod mizo 12 3320 3310 Žalec ŠIFRA_ KNJIGE ŠIFRA_ ČLANA DATUM IZPOSOJE DATUM VRNITVE ŠIFRA_ KNJIGE NASLOV AVTOR K 1 111 20. 10. 2003 1. 11. 2003 K 1 Zveri A. Logar K 2 111 20. 10. 2003 1. 11. 2003 K 2 Pod krinko J. Smith K 1 112 2. 11. 2003 1. 12. 2003 K 3 Lepa Suzana V. Pavlov K 2 112 2. 11. 2003 1. 12. 2003 K 4 Moj svet D. Bizgec K 3 112 5. 11. 2003 null K 1 113 5. 11. 2003 null K 2 113 5. 12. 2003 7. 12. 2003 K 2 111 10. 12. 2003 null
E-R diagram relacijski podatkovni model 1. Pretvorba iz konceptualnega v logični podatkovni model je pravzaprav pretvorba E-R diagrama v relacijski podatkovni model (logični). 2. Konceptualni model iz faze analize najprej dodelamo tako, da upoštevamo zahteve relacijskega modela. 3. Vsako entiteto iz tako dobljenega E-R diagrama nato prevedemo v eno relacijo (tabelo). 4. Pazimo na ključe. 5. Atributom določimo domene in podatkovne tipe.
E-R diagram relacijski podatkovni model 6. Relacijski model ne dela posebne razlike pri predstavljanju tipov entitet in tipov povezav med njimi. Zato lahko v relacijskem modelu nekatere relacije predstavljajo dejstva o entitetah, druge pa o povezavah med njimi, vendar ni nobene formalne razlike.
E-R diagram relacijski podatkovni model ANALIZA NAČRTOVANJE Konceptualni model Relacijski model Entiteta Tabela Atribut Stolpec Enolični identifikator Ključ Povezava 1: n Tuji ključ Povezava m: n Vmesna tabela
E-R diagram relacijski podatkovni model • Razmerje 1: 1 – Tuji ključ je lahko na eni ali drugi strani. – Entiteti s tujim ključem dodamo tudi morebitne atribute povezave med entitetama. a 1#, a 2, a 3 …, b 1, p 1 … A 1 p 1, … 1 B b 1#, b 2, b 3 …, a 1, p 1 …
E-R diagram relacijski podatkovni model • Razmerje 1: 1 RAVNATELJ šifra_ravnatelja#, ime, priimek, šifra_šole 1 1 ŠOLA šifra_šole#, ime_šole , šifra_ravnatelja
E-R diagram relacijski podatkovni model • Razmerje 1: N – Tuj ključ damo na stran entitete z “N”. – Entiteti s tujim ključem dodamo tudi morebitne atribute povezave med entitetama. A a 1#, a 2, a 3 … 1 p 1, … N B b 1#, b 2, b 3 …, a 1, p 1 …
E-R diagram relacijski podatkovni model • Razmerje 1: N OBČAN EMŠO#, ime, priimek 1 N VOZILO reg_št#, barva, letnik, tip, EMŠO
E-R diagram relacijski podatkovni model /8 • Razmerje M: N • Povezavo M: N razstavimo na dve povezavi 1: N in tako dobimo novo, povezovalno entiteto. – Vanjo damo oba primarna ključa prvotnih entitet in morebitne atribute povezave. – Oba primarna ključa tvorita skupaj sestavljeni ključ povezovalne entitete (ki se mu včasih pridruži še kak atribut).
E-R diagram relacijski podatkovni model • Razmerje M: N A A a 1#, a 2, a 3 … 1 M M p 1, … A_B N a 1+b 1#, p 1, … N B b 1#, b 2, b 3 … 1 B b 1#, b 2, b 3 …
E-R diagram relacijski podatkovni model • Razmerje M: N Šifra_člana#, Ime, Priimek, Naslov ČLAN N ČLAN 1 N Datum_izposoje, Datum vrnitve M KNJIGA Šifra_knjige#, Naslov, Avtor IZPOSOJA M 1 KNJIGA Šifra_knjige+ Šifra_člana+ Datum_izposoje#, Datum vrnitve
Ponovitev • Kaj je značilnost relacijskega podatkovnega modela? – Kako je predstavljena entiteta? – Kaj je relacija (v relacijskem podatkovnem modelu)? – Kako so predstavljeni atributi? • Kaj je relacijska shema? – Kako je s povezavami med relacijami (so v naprej določene? )
Model E-R Dijak Šifra dijaka Ime in priimek Spol Datum rojstva Ulica Poštna številka Telefon Dijak - Dejavnost 1 N Šifra dijaka Šifra tečaja Datum Ocena Opr_ure N Dejavnost Šifra tečaja Ime tečaj 1 Število ur Nosilec tečaja Cena tečaja
Koraki izgradnje baze v Accessu (ER model je izdelan) • izdelava tabel – določitev lastnosti enot (entitet) – določitev podatkovnih tipov – določitev primarnega ključa • povezava tabel • …
Priprava tabel - relacij • Imena polj • Vrsta podatkov • Določanje lastnosti polj – dolžina – vnosna maska – omejitve vrednosti …
Vrste podatkov • Samoštevilo (Autonumber) • Števila – byte – celo število – integer – … v pomoči • datum • valuta • …
Vnosna maska Znak 0 9 # L ? A/a Pomen cifra od 0 do 9 cifra ali presledek cifra, presledek, - ali + črka od a do z cifra ali črka da/ne vnos znaka, ki sledi “” & /C znak ali presledek Obvezen vnos da ne ne da
Povezave med tabelami • Povezujemo atribute – preko ključa – iz osnovne tabele (s primarnim ključem) • Določimo vrsto povezave in referenčni integriteto
- Slides: 28