Professional Documents
Culture Documents
E-R Eskemak Datu Baseak 2012-2013 Anartz Mugika - Ariketak
E-R Eskemak Datu Baseak 2012-2013 Anartz Mugika - Ariketak
E-R Eskemak Datu Baseak 2012-2013 Anartz Mugika - Ariketak
PRAKTIKA 3: LIBURUTEGIAK
Liburutegi batetan liburu batzuk daude (isbn, izenburua, autorea, editoriala, ). Bezeroak liburu hauek alokatzera etortzen dira (bezero bakoitzak bere kodea du,izena, abizena, telef, ). Jakin nahi da urtean zehar bezero bakoitzak zein liburu alokatzen duen. Hau gordeko duen datu basearen diseinua egin E/R eskema bat erabiliz.
Jakin nahi da baita ere, bezero bakoitzak zein datatan alokatu duen liburu bakoitza. Zelan jakin daiteke bezeroak liburu bat oraindik itzuli duen ala ez? E/R diagrama honako hau izango da:
Errore bezala onartuko digu daukagun konfigurazioa kontutan hartuta zer bezero batek liburu berdina nahi badu alokatu, klabeak bikoiztean ALOKAIRUA taulan akatsa emango du eta ezingo dugu lanean jarraitu LIBURUA ( Liburu-kodea, ISBN, Izenburua, Egilea, Argitaletxea, Generoa) BEZEROA (Bezero-kodea, NAN, Izena, Abizenak, Sexua, Jaiotze-data, e-posta) ALOKAIRUA (Liburu-kodea, Bezero-kodea, alokatze-data, bueltatua) Hau ez gertatzeko, ALOKAIRUA erlazioan alokatze-data klabe bezala finkatuko dugu beste biak kenduz: LIBURUA ( Liburu-kodea, ISBN, Izenburua, Egilea, Argitaletxea, Generoa) BEZEROA (Bezero-kodea, NAN, Izena, Abizenak, Sexua, Jaiotze-data, e-posta) ALOKAIRUA (Liburu-kodea, Bezero-kodea, alokatze-data, bueltatua)
JOKALARIA
Saskibaloi talde baten jokalari asko parte hartu ahal dute. Jokalari batek saskibaloi talde askotan parte hartu dezake. N:M erlazioa. Jakin nahi da JOKALARI bakoitzak TALDE bakoitzean izan duen kontratuaren iraupena (kontratu hasiera eta kontratu bukaera)
N:M
IZENA HELBIDEA KANTXA HIRIA FITXA ZBKIA IZENA ABIZENAK JAIOTZE-DATA BAZKIDEKOPURUA SOLDATA ESTATISTIKAK
JOKALARIA
MAILA
PARTE HARTU erlazioari izen berria jarri ahal diogu, erreferentzia zuzenagoa egiteko erlazionatuta dagoen taulekin bien arteko izen elkartea jartzea da egokiago, hau da, TALDEJOKALARI. Zer gertatuko litzake jokalari batek talde baten jokatu ostean beste batera joaten dela jokatzera eta denbora tarte jakin batean berriz bueltatzen da lehen izandako taldean? Jokalari batek, talde baten jokatuta beste batera joaten denean eta gero bueltatu ezkero, Access programan datuak sartzean gako nagusien bikoizketa emango da eta horren eraginez akatsak emango ditu datuak sartu ezin izango ditugularik. Access programan honako arazoa emango digu bikoiztutako datua dela esateko:
Ezingo dugunez datuak sartzen jarraitu erregistro hori ezabatu ahal izateko "ESC" sakatuko dugu. Eredu erlazional berria honela geratuko da:
SASKIBALOI TALDEA(Izena,CIF,Helbidea, Kantxa, Hiria, Bazkide-kopurua, Maila, Tituluak,...) TALDE-JOKALARI (Talde-izena, Jokalari Fitxa zbk, Soldata, Kontratu Hasiera, Kontratu Amaiera) JOKALARIA (Fitxa-zbk, Izena, Abizenak, Jaiotze-data, Estatistikak, Helbidea, NAN, Pasaportea,...)
Horrela, ez dugu bikoizketarik izango zer "Kontratu-Hasiera" desberdina izango beti nahiz eta talde baten edo beste errepikatu 2, 3 edo gehiagotan. ACCESS-EN irudikatua taulak:
SASKIBALOI TALDEA(Izena,CIF,Helbidea, Kantxa, Hiria, Bazkide-kopurua, Maila, Tituluak,...)
Gako nagusien aldaketari esker Andres Nocioni Baskonia taldera bueltatu ahal izango da Datu Basean arazorik suertatu barik, aipatutako aldaketa eginez:
10
E-R ESKEMA:
IZENA
KOKAPENA KODEA NAN IZENA
1:N
ABIZENAK DEPARTAMENTUA LAN EGIN LANGILEA HELBIDEA
TELEFONOA
N:M
PARTE HARTU JAIOTEGUNA
KODEA
PROIEKTUA
BUKAERAKO DATA
Departamentu baten langile askok lan egingo dute Langile batek departamentu baten lan egingo du Langile bat proiektu askotan parte ahal du. Proiektu baten langile askok parte hartzen dute
11
12
13
ACCESS-EN irudikatua erlazioak: "Exigir Integridad referencial" jarri erlazioetan, loturan arratoiko eskumako botoia sakatuz horren gainean eta "Modificar relacin" aukeratuz, honela geratuko zaigu:
14
Honetarako, LANGILE eta DEPARTAMENTUA taulak beharko ditugu, lehenetik "Izena" nahiz "Abizena" harturik eta "Departamentu Izena" eta "Kokapena" bigarren taulatik harturik Txostena egiteko, "Asistente para informes" aukeratzen egin ahalko dugu (Azalduta ACCESS ariketak egin genitugun dokumentuan). Emango diren pausoak honako hauek dira: LANGILEA taularik "Izena" eta "Abizenak" hartuko ditugu. DEPARTAMENTUA taularik "Dpto-Izena" eta "Kokapena". Jarraitzeko "Siguiente" sakatu:
15
"Siguiente" sakatu behin eta berriz leiho hontara heldu arte, "T_LANGILEDEPARTAMENTU" deituko diogula. Amaitzeko "Finalizar" sakatu. Txostena "Vista Diseo" ikuspegian txukun ipini ondoren, itxura hau edukiko du:
16
Honetarako, LANGILE eta DEPARTAMENTUA taulak beharko ditugu, lehenetik "Izena" nahiz "Abizena" harturik eta "Departamentu Izena" eta "Kokapena" bigarren taulatik harturik Kontsulta egiteko, "Diseo de Consulta" aukeratzen egin ahalko dugu (Azalduta ACCESS ariketak egin genitugun dokumentuan). Ondorengo irudian "Vista Diseo" ikuspegian nola aurkituko zen kontsultaren oinarriak ditugu non "Elektronika" departamentuko langileak bilatu nahi ditugu eta horretarako "DEPARTAMENTUA" taulan izena aukeratzen dugun eremuan Como "Elektronika" idazten dugu. "Vista Diseon" ikuspegian lortuko duguna:
17
IKASLE-KODEA
NAN
IZENA
ABIZENAK
IKASGAI-KODEA
IZENA ORDU-KOPURUA
N:M
IKASLE
MATRIKULATUA DAGO
HELBIDEA
IKASGAI
KURTSOA
JAIOTEGUNA TELEFONOA
IRAKASLEA
Eredu erlazionala: IKASLE (Ikasle-kodea, NAN, Izena, Abizenak, Helbidea, Jaioteguna, Telefonoa, Argazkia) MATRIKULA (Ikasle-kodea, Ikasgai-kodea, Azken Nota) IKASGAI (Ikasgai-kodea, Izena, Ordu-kopurua, Kurtsoa, Gela-zenbakia, Irakaslea) Honela uzten badugu, ikasle bat ezin da matrikulatu ikasgai baten behin baino gehiagotan (errepikatu beharko badu). Horregatik, Ikasturtea eremua jarriko dugu MATRIKULA taulan beste bi gako nagusiekin gako nagusi bezala agertuko dela (GEHITU ENTITATE ERLAZIOAN ERE!!).
18
IZENA
ABIZENAK
IKASGAI-KODEA
IZENA ORDU-KOPURUA
N:M
IKASLE
MATRIKULATUA DAGO
HELBIDEA
IKASGAI
KURTSOA
JAIOTEGUNA TELEFONOA
IRAKASLEA
Eredu erlazionala: IKASLE (Ikasle-kodea, NAN, Izena, Abizenak, Helbidea, Jaioteguna, Telefonoa, Argazkia) MATRIKULA (Ikasle-kodea, Ikasgai-kodea, Ikasturtea, Azken Nota) IKASGAI (Ikasgai-kodea, Izena, Ordu-kopurua, Kurtsoa, Gela-zenbakia, Irakaslea) ACCESS-EN irudikatua taulak: IKASLE (Ikasle-kodea, NAN, Izena, Abizenak, Helbidea, Jaioteguna, Telefonoa, Argazkia)
19
20
Erlazioak egiteko bi era edukiko ditugu: 1. Eskuz, "Relaciones" leihoan barruan bata besteak elkartuz arratoiarekin mugituz. 2. "Asistente de bsqueda" erabiltzen "Vista Diseo" ikuspegian taulak sortzen gauden bitartean eta beste taularekiko erlazio zuzena dutenean. Hau egiteko, adibidez, honela egin ahal izango dugu : a. MATRIKULA taulan "ikasle-kodea" eremuarekin egingo dut, IKASLE taulako "Ikasle-kodea" eremuarekin erlazionatuta dagoela erlazio baten bidez . b. Honetan, "Tipos de datos" sailean "Asistente para bsqueda" erabiliko dut. c. "Deseo que la columna de bsqueda busque los valores en una tabla o consulta" aukeratuko dut eta "Siguiente" aukera hartuko dut. d. Aurkikuntza egiteko erabiliko dudan taula IKASLE da non "ikasgai-kodea" daukagu. Aukeratu ostean "Siguiente" sakatu (ikusi irudia)
21
f.
"Siguiente" sakatu ezer ukitu barik,. agertu ahal izateko, honela utziko dugularik:
h. Bi aldiz jarraian sakatu "Siguiente" ezer aldatu barik eta amaitzeko "Finalizar" sakatu. i. Taula gorde nahi dugun galdetuko digu eta guk baietz esango diogu.
22
k. Geratzen zaiguna "Integridad referencial" moduan uztea eta horretarako erlazio marra horren gainean arratoiaren eskumako botoiaz sakatzen dugu "Modificar relacin" aukera eginez eta honen barruan "Exigir integridad referencial" kakotxa aukeratuz.
l.
23
PRAKTIKA 6: HOTELAK
Hotel-kate batek hainbat hotel ditu. Hotel bakoitzeko jakin behar da: izar kopurua, zuzendaria, izena, helbidea.,... Datu basean hotel bakoitzean dauden logelak erregistratu behar dira. Logela bakoitzeko gorde behar da: logela_zenbakia, logela_mota (bakoitia, bikoitza, suitea), zein ikuspegia duen, eta abar. Logela bakoitzean zeintzuk bezero egon diren jakin nahi da (suposatu urte osoko datuak direla). Bezero bakoitzak harreran nortasun agiria erakutsi behar du. Derrigorrez jakin behar da bezero bakoitza logela bakoitzean noiz sartu den eta noiz irten den. Egin dagokion E/R diagrama:
HOTELKODEA IZENA HELBIDEA IZAR-KOPURUA LOGELA-ZENBAKIA LOGELA-MOTA IKUSPEGIA EDUKIERA
MINIBAR
HOTELAK
ERREGISTRATU
LOGELAK
BEZEROAK
NAN
IZENA
ABIZENAK
24
EREDU ERLAZIONALA:
AUTOBUSAK (Matrikula, Marka, Modeloa, Kolorea, ez-gaituentzat?, Matrikulazio-urtea) GIDARIAK (NAN, Izena, Abizenak, Helbidea, Jaiotze-data, Gidabaimen-mota, Gidabaimen-data, Matrikula) ERREBISIOAK(Errebisio-zbk, Errebisio-data, Errebisatutakoa, Arazoak, Prezioa, Matrikula)
25
Eredu erlazionala: UGAZTUNAK (Animali-kodea, kokapena, Elikadura mota, habitat) Habitat eremua sortuko da eredu erlazionalean esateko ugaztuna hau uretakoa, hegalaria edota lurrekoa den. Uretako, Hegalariak eta Lurrekoak entitateak eremuak edukiko balituzte taula indibidualak sortu beharko lirateke baina ez dutenez ezer ez dira sortzen aipatutako HABITAT eremua sorturik.
26
27
Eredu erlazionala: PERTSONA (NAN, Izena, Abizenak, Jaioteguna, Telefonoa, E-posta, Helbidea, Ogibidea) IKASLEA (NAN, Ikastetxe-izena) LANGILEA (NAN, Enpresa-izena) AUTOA (Matrikula, Marka, Modeloa, Kolorea, Erregai-mota, Potentzia) PERTSONA-AUTOA (Matrikula, NAN_Pertsona)
28
1:N
(1,1) (1,N)
3D?
ERAIKITZE-URTEA
ZINEAK
DITU
TELEFONOA
N:M
EMANALDI DATA
(1,N)
PELIKULAK
AKTORE NAGUSIAK
PELIKULA-KODEA
IZENA
KALIFIKAZIOA
Salak-Pelikula erlazioan emanaldi-kode eremua jarri dut duplikatuak ez sortzeko. Zinekodea, Sala-zbkia eta abar jarri ahalko nituen denak gako nagusia bezala baina hainbeste gako nagusi ez egoteagatik beste eremu bat sortu dut eman ahal zaigun duplikatu arazoak konponduko duelarik
29
30
b) Eredu erlazionala OSAGAI KIMIKOAK (Izena, Sinboloa, Pisu atomikoa) GAS (Izena, Espazio Efizientea) SOLIDO (Izena, Dentsitatea, Lurrintze tenperatura) LIKIDO (Izena, Gogortasuna, Kolorea, Usaimena)
31
32
Tour bakoitza, bisitagune jakin batzuekin osatuta dago. Bisitagune bakoitza Tour baten baino gehiagotan bisitatua izan ahal da. Bisitagune bakoitzeko gorde bere kodea, izena, deskribapena, ...
Tour bateko bisitaguneak hiru motatakoak izango dira: hiriak, monumentuak edo inguru geografiko bereziak. Hiria bada biztanle kopurua gorde. Monumentua bada artista eta noiz egindakoa den gorde. Ingurune- geografikoa bada ez gorde eremurik.
Bisitagune batzuetan hotelak egongo dira. Euren izenak, izar kopurua, telef., web orria eta zuzendarien datuak jakin nahi dira.
Agentzia honetako bezeroa izateko, ezinbestekoa izango da tourren batean erreserba eginda izatea eta zenbatekoaren zati bat ordainduta uztea (seinalea). Bezero batek tour askotan parte hartu ahal du (data desberdinetan logikoki). Tour bakoitzean gutxienez 10 bezero egon behar dira, bestela Tourra anulatu egiten da.
Azkenik jakin nahi da bezero bakoitza zein hoteletan egon den. Logikoki, bezero bat egon ahal da hotel baten baino gehiagotan (data ezberdinetan -sarrera data eta irteera data-).
Egin beharrekoa:
a) E/R eskema. b) Eredu erlazionala c) Access erabilita sortu eta erlazionatu taulak
33
Eredu Erlazionala:
Sortu dudan E/R Eskema kontutan hartuta, 4 entitate nagusi izango ditut non BISITAGUNE entitatean egitura hierarkiko inklusibo bat dago 3 entitateez sorturik baina hauetako bi eremuak dituela. Hau kontutan hartuta 4 taula entitate nagusiengatik + 2 eremua duten bi entitate horiengatik BISITAGUNE entitatean aurkitzen direlarik. Oraingoz 6 taula sortu beharko ditut. Erlazioak kontutan hartuz, 3 N:M erlazio daude (3 taula gehiago) eta 1:N erlazio bat printzipioz ez duela taularik sortuko (gako atzerritar bat gehituz 1 aldean berez) BAINA kasu honetan agerraldiak kontutan hartuta beste taula bat sortu beharko da agerraldi gutxienekoa 0 da eta gehiengoa 1. (1,1) izango balitz, esan bezala gako atzerritar bat gehituko nion BISITAGUNE taulari. Esandako guztia kontutan 10 taula osaturik egongo da ariketa honetako eredu erlazionala.
34
BEZEROA-HOTELAK (Bezero Kodea, Hotel kodea, Alokatze-kodea, Sarrera Data, Irteera Data)
35
36
37
DPTO-KODEA IZENA
KOKAPENA
ARLOA
DEPARTAMENTUA
1:N:M
LANGILEA LANA
IZENA
IZEN/ABIZENAK
DESKRIBAPENA
LAN_EGIN (Langile-kodea, Lan-kodea, Dpto-kodea) Kasu honetan ikusi ahal denez, 1:N:M motako erlazioa daukat eta horregatik entitateak sortarazten duen tauletaz aparte taula berri bat sortuko da arauak diotenez BETI sortuko
38
39
ER 13.- PINAKOTEKA
Hezkuntza eta Zientzia Ministerioak bildu egin nahi du Espainiako pinakoteka guztietako koadroei buruzko informazioa:
- Pinakoteka bakoitzari dagokionez, izena jakin nahi dute (bakarra izango da munduan), zein hiritan dagoen, helbidea, posta kodea, dimentsioak metro koadrotan,
- Pinakoteka bakoitzean hainbat koadro daude. Koadro bakoitza pinakoteka baten edo gehiagotan erakutsia izan ahal da, logikoki data ezberdinetan. Honela, Hezkuntza eta Zientzia Ministerioak jakin dezake koadro bakoitzaren ibilbidea zein izan den.
- Koadro bakoitzaren kodea, izena, neurriak, noiz izan den pintatua eta zein teknika erabili duen egileak jakin nahi dute.
- Koadro bakoitza pintore bakar batek pintatuta dagoela suposatuko dugu. Pintore horren izena, herrialdea, jaioterria, jaiotza-data eta heriotza-eguna jakin nahi dituzte. Pintore batzuek maisutzat izaten dute beste pintoreren bat. Beraz, badira pintore batzuk beste hainbaten maisu direnak; dena den, pintore guztiak ez dira maisu izaten.
- Pintorea eskola zehatz batekoa izan liteke. Hala balitz, eskola horren izena, jatorrizko herrialdea, eta eskolaren sorrera-urtea jakin nahi dira.
Egin beharrekoa:
a) E/R eskema. b) Eredu erlazionala c) Ziurtatu aurreko eredu erlazionala 3FNean dagoela. d) Access erabilita sortu eta erlazionatu taulak.
40
Eredu erlazionala:
PINAKOTEKA (Izena, Kokalekua, Dimentsioak m , Helbidea, Posta Kodea)
2
KOADRO (Koadro kodea, Izena, Neurriak, Noiz Margotua, Erabilitako teknikak, Pintore-kodea)
41
42
Bilboko
Portuak
itsasontzien
deskargarako zonalde batzuk ditu. Zonalde bakoitzeko gorde behar dena: zenbakia, izena, atrakerako (atraque=aparcamiento de barcos) duen distantzia, kaladoa (calado=distancia en m. del fondo marino que se dispone para el atraque), ... Begiratu azpiko irudia:
Deskargarako zonalde bakoitza, Operadore askok erabili ahal dute (zama lanak egiteko). Operadore bakoitzak bakarrik zonalde baten lan egingo du. Operadore bakoitzeko gorde behar diren datuak hauek dira: Operadorearen izena, zuzendariaren datuak, kontaktuko pertsonaren datuak, telef., web orriaren helbidea, ...
Deskargarako zonalde bakoitzean itsasontzi askok atrakatu ahal dute. Itsasontzi bakoitzak ere deskargako zonalde askotan atrakatu ahal du. Itsasontzi bakoitzeko jakin nahi dena begitatu eskuineko irudian:
43
Itsasontzi handiek erremolkadoreen laguntza izan behar dute deskargako zonaldetan atrakatzeko. Erremolkadore bakoitzeko gordetzen diren datuak hauek dira: Erremolkadore_kodea, izena, eta potentzia.
Erremolkadore bakoitzak deskargako zonalde baten lan egiten du bakarrik. Zonalde bakoitzean erremolkadore asko egon ahal dira lanean.
44
LAGUNTZA IZAN erlazioan itsasontzi bat erremolkadore batengatik laguntza asko izan ditzakeenez, laguntza-kodea, desberdina izan beharko du eta horregatik gako nagusitzat ere hartuko dugu, egun desberdinetan izan ditzakeen laguntzak kontrolatzeko.
ATRAKATU erlazioan, Ordua gako nagusitzat ere hartuko da duplikatu arazoak ez emateko
E-R Eskemak - Ariketak - DAM 2012/2013 Datu Baseak - Anartz Mugika c) Access erabilita sortu eta erlazionatu taulak (3 puntu)
45
46
Eredu Erlazionala: SOS_DEIA (SOS_Deia_kodea, Mota, Urgentzia Gradua) JASO (SOS_Deia_kodea, Parke_kod, Data Ordua) SUHILTZAILE PARKEA (Parke_kod, Izena, Helbidea, Telefonoa, Kategoria) SUHILTZAILE (Su_kod, Izena, Abizenak, Jaiotze-data, NAN, Helbidea, Telefonoa, Parke_kod) IBILGAILUA (Parke_kod, zbkia, Marka, Modeloa, Matrikula, Azken Errebisioa, Erosketa, Mota)
47
48
Eredu erlazionala: MULTA (B_Kod, Zbkia, Dirua, Data) BEZEROA (B_Kod, Izena, Abizenak, Telefonoa) PRESTAMU (Prestamu-kodea, Data, Mota, Bezero_kodea, Liburu ISBN) PRESTAMU ETXEA (Prestamu-kodea, Bueltatze data) LIBURU (ISBN, Izenburua, Idazlea, Libre?)
49
50
Eredu erlazionala: FARMAZIA (Farmazia-kodea, Helbidea, Arduraduna, Telefonoa) BEZEROA (NAN, Izena, Abizenak) PRODUKTUA (Produktu-kodea, Izena, Deskribapena, Hornitzaile-kodea) HORNITZAILE (Hornitzaile-kodea, Izena, Helbidea, Telefonoa) EROSI (Farmazia-kodea, Nan_Bezeroa, Produktu-kodea)
51