370 likes | 509 Views
Kap 04 Datamodellering. Datamodellering. - Et språk for å analysere og beskrive virkeligheten. - En metode for å beskrive naturlige sammenhenger i data som skal benyttes i et informasjons-system. Objekt.
E N D
Datamodellering - Et språk for å analysere og beskrive virkeligheten. - En metode for å beskrive naturlige sammenhenger i data som skal benyttes i et informasjons-system.
Objekt • Et Objekt er en gjenstand eller et begrep som er entydig identifiserbar.Eks: En Bil er et objekt. Denne bilen kan vi identifisere eller gjenkjenne ved identifikasjonen bilnummer siden biler har ulikt bilnummer. Vi sier at ID = bilnummer En Person er et objekt. Personen kan vi identifisere ved hjelp av navn hvis den gruppe personer vi betrakter er slik at ingen har samme navn. Eller vi kan sette ID = fødselsnummer siden dette er unikt. En Vare (eller produkt) er et objekt. ID kan være et varenummer. En Avdeling kan vi betrakte som et objekt. ID kan være avdelingsnummer. Et Tidspunkt kan vi betrakte som et objekt. Her kan vi sette ID = Dato + Klokkeslett.
Attributt • Attributt: Med Attributt mener vi en egenskapknyttet til et objekt.Eks: Attributter (egenskaper) knyttet til en Bilkan være: Farge, Vekt, Pris, Årsmodell, ... Attributter knyttet til en Personkan være: Alder, Høyde, Vekt, Yrke, ... Attributter knyttet til Avdelingkan være: Avdelingsnavn, Salgsbudsjett, Etasje, ...
Verdi • Med Verdi mener vi verdier som et attributt kan anta.Eks: Attributtet Fargekan anta verdiene: Rød, Blå, Grønn, ... Attriubuttet Yrkekan anta verdiene: Fisker, Lege, Snekker, ... Attributtet Høydekan anta verdiene: 180 cm, 150 cm, ...
Entitet • Med en Entitetmener vi et objekttilknyttet dets attributter og verdier.
Objekt / Attributt / Verdi / Entitet Begrep Figur Definisjon Eks Objekt En gjenstand eller et begrep som er entydig identifiserbar Bil ID = BilNr Attributt Egenskap knyttet til et objekt Farge Verdi Verdi Verdien til et attributt Rød Entitet Et objekt tilknyttet dets attributter og verdier PC 12345 Rød
Relasjoner ( Sammenhenger ) Eier Eies av Nils PC23718
Relasjoner Eier Eies av Person Bil Objekter Eier Eies av Entiteter Person Bil
Relasjoner En-til-en 1:1 1 1 En-til-mange 1:n 1 n Mange-til-mange 1:1 n m
1:n relasjon 1 n Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Andersen Olsen Nilsen PC23718 PN11900 DA30980 PN12000 PC10550
1:n relasjon 1 n Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Andersen Olsen Nilsen PC23718 PN11900 PC23718 PN12000 PC10550 Galt: Samme bilnummer forekommer flere ganger
1:n relasjon n 1 Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Andersen PC23718 PN11900 PC23718
1:n relasjon n 1 Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Nilsen PC23718 PN11900 PN12000 Galt: Samme navn forekommer flere ganger
n:m relasjon n m Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Andersen Olsen Nilsen Knutsen PC23718 PN11900 DA30980 PN12000 PC10550 PN11900
n:m relasjon n m Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Andersen Olsen Nilsen Knutsen PC23718 PN11900 DA30980 PN12000 PC23718 PN11900 Galt: Samme kombinasjon av navn og bilnummer forekommer flere ganger
1:1 relasjon 1 1 Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Andersen Knutsen PC23718 PN11900 DA30980 LH20000
1:1 relasjon 1 1 Person (Navn) Bil (BilNr) Eier Eies av Nilsen Olsen Nilsen Knutsen PC23718 PN11900 DA30980 PN11900 Galt: Samme navn forekommer flere ganger Galt: Samme bilnummer forekommer flere ganger
Relasjoner 1:1 1:n n:m
Objektering av relasjoner Person (Navn) Bil (BilNr) Eier Eies av Ved en mange-til-mange-relasjon ( n:m ) mellom to objekter lager vi et nytt objekt av relasjonen. ID i det nye objektet vil være samlingen av ID-ene fra de to opprinnelige objektene. Dette nye objektet vil seinere gi opphav til en ny entitet og en ny tabell i relasjons-databasen.
n:m relasjon Eksempel Person Bil PC 11111 Ford PC 22222 Volvo PC 33333 Renault PC 44444 Saab PC 55555 Ford PC 66666 Ford PC 77777 Toyota Nilsen Storgt 3 Olsen Havnegt 7 Hansen Ekornv 8 Knutsen Tiurv 9 1 BilEier 1 Nilsen PC 33333 01.01.95 Hansen PC 11111 07.07.93 Nilsen PC 22222 03.05.96 Olsen PC 44444 12.09.94 Olsen PC 22222 14.10.96 n n
Objektering av relasjoner Firma Vare Lev F V L En n:m relasjon mellom Firma og Vare gir opphav til et nytt objekt FV. Lev (Leverandør) inngår i en n:m relasjon til FV. Slutt-resultatet blir som vist i figuren til høyre.
Entiteter - Tabeller Navn Adr Person (PNr) Avd (ANr) Navn Budsj. 1. Grupper sammen objekter til entiteter 2. Overfør entitetene og relasjonene mellom disse til tabeller.
Entiteter - Tabeller Person Avd PNR navn adr ANR navn budsjett PNR anr Person Avd PNR navn adr avd ANR navn budsjett
Datamodell / Entiteter / Tabeller - Eks 1 F E D C A B G A B A c d e B f g a B A c d e B f g a B A
Datamodell / Entiteter / Tabeller - Eks 2 F E D H C A B G A H B A c d e A B B f g A c d e A B B f g
Datamodell / Entiteter / Tabeller - Eks 3 C F E H I D A B G C C h A A d e IC A B C B B f g Tabellene blir de samme som entitetene
Datamodell / Entiteter / Tabeller - Eks 4 C H F J I E K D A B G A K A d e f A B C j B g H i C B H A A d e f K A B c C j C B B g h H H i
KinoPrøver å starte med objektene Kino og Film Kino Film Tid
KinoPrøver å starte med objektene Kino og Film Kino Film Tid K F T
KinoPrøver å starte med objektene Kino og Film K F T K1 K2 K3 K4 K4 F1 F2 F1 F2 F1 T1 T2 T3 T2 T2 Ikke mulig. To forskjellige filmer kan ikke samtidig vises i samme kinosal. Konklusjon: Uakseptabel datamodell
KinoPrøver å starte med objektene Film og Tid Film Tid F T K Kino F1 F2 F3 T1 T2 T2 K1 K2 K2 Konklusjon: Uakseptabel datamodell
KinoPrøver å starte med objektene Kino (Kinosal) og Tid Forestilling Kinosal Tid
KinoGrunnleggende datamodell Forestilling Kino Kinosal Tid Film