Upload
ewa
View
102
Download
0
Embed Size (px)
DESCRIPTION
Database-begreber (databaser, del 2). Database-typer. Der findes flere slags database-systemer: Hierakisk database Netværks-database Objekt-orienteret database Relations-database Relations-databasen er langt den mest almindelige; vi koncentrerer os om den fra nu af!. Relations-database. - PowerPoint PPT Presentation
Citation preview
Database-begreber(databaser, del 2)
RHS – Informationsteknologi 2
Database-typer
• Der findes flere slags database-systemer:– Hierakisk database– Netværks-database– Objekt-orienteret database– Relations-database
• Relations-databasen er langt den mest almindelige; vi koncentrerer os om den fra nu af!
RHS – Informationsteknologi 3
Relations-database
• Hvad betyder det egentlig…?
• I en database har vi naturlig-vis data om forskellige ting
• I en database over en skole kunne vi f.eks have data om elever, lærere og fag
RHS – Informationsteknologi 4
Relations-database
• I en relations-database kan vi nemt gemme data om relationerne mellem tingene
ElevNavn
AdresseFødselsdato
…
LærerNavn
AdresseFødselsdato
Ansat…
KlasseKlassenavn
Årgang…
FagFagnavnNiveau
…
RHS – Informationsteknologi 5
Relations-database
• Hvor har vi data om, hvilke elever der går i en bestemt klasse, hvilke lærere der underviser i hvilke fag, og så videre…?
ElevNavn
AdresseFødselsdato
…
LærerNavn
AdresseFødselsdato
Ansat…
KlasseKlassenavn
Årgang…
FagFagnavnNiveau
…
RHS – Informationsteknologi 6
Relations-database
• Måske således…
ElevNavn
AdresseFødselsdatoKlassenavn
…
LærerNavn
AdresseFødselsdato
AnsatFagnavnFagnavn
…
KlasseKlassenavn
ÅrgangNavnNavnNavnNavn
…
FagFagnavnNiveauNavnNavnNavn
…
RHS – Informationsteknologi 7
Relations-database
• Vi skelner mellem to slags data
• Data som fortæller noget om en ”ting” – en ting kaldes generelt for en entitet
• Nadia er 1,64 m høj
• Data som fortæller noget om relationer mellem entiteter
• Nadia underviser i faget fransk
RHS – Informationsteknologi 8
Elementer i en database
• Hvordan ville man opbevare data i gamle dage…?
• På et arkivkort kunne der være data om f.eks en enkelt person
• Alle arkivkort om personer i samme skuffe, en anden skuffe til en anden entitet…
RHS – Informationsteknologi 9
Elementer i en database
• For en relationel database minder organi-sationen af data om et arkivskab:– Hele arkivskabet er databasen– Hver skuffe rummer kun data om en enkelt
type entitet, og data er altid på den samme form
– I en relationel database er det tilsvarende begreb en tabel
RHS – Informationsteknologi 10
Tabel
• En tabel rummer kun data om én type entitet, og altid på samme form
PersonNavn Adresse Telefon Født Gift
Per Jensen Skolevej 12 31458791 17-07-1962 Nej
Jane Høst Allégade 70 52442109 31-03-1971 Ja
Allan Ravn Svinget 49 44553177 12-12-1977 Ja
Ole Olsen Junivej 112 41764430 26-04-1950 Ja
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Nej
RHS – Informationsteknologi 11
Tabel
Dyr Ben
Ko 4
So 4
John 2
Abe 2
Ål 0
Bi 6
Godt med Ål…
RHS – Informationsteknologi 12
Post
• En post er en enkelt linie i en tabel, altså data for en enkelt, specifik entitet
PersonNavn Adresse Telefon Født Gift
Per Jensen Skolevej 12 31458791 17-07-1962 Nej
Jane Høst Allégade 70 52442109 31-03-1971 Ja
Allan Ravn Svinget 49 44553177 12-12-1977 Ja
Ole Olsen Junivej 112 41764430 26-04-1950 Ja
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Nej
RHS – Informationsteknologi 13
Felt
• Et felt er en enkelt oplysning om en enkelt, specifik entitet
PersonNavn Adresse Telefon Født Gift
Per Jensen Skolevej 12 31458791 17-07-1962 Nej
Jane Høst Allégade 70 52442109 31-03-1971 Ja
Allan Ravn Svinget 49 44553177 12-12-1977 Ja
Ole Olsen Junivej 112 41764430 26-04-1950 Ja
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Nej
RHS – Informationsteknologi 14
Tænk på en relations-database som…
• …et gammeldags arkivskab– Hele skabet er en database– En skuffe er en tabel– Et kartotekskort er en post– En oplysning på et kort er et felt
• Men en database bliver ikke støvet og skrammet…
RHS – Informationsteknologi 15
Et database-system kaldes også DBMS
• Data
• Base
• Management
• System
RHS – Informationsteknologi 16
Er det nemt…?
• Umiddelbart ser det ret nemt ud at definere en database
• Udfordringen er at definere den korrekt!
• Korrekt: undgå vore to dødsfjender– Redundans– Inkonsistens
RHS – Informationsteknologi 17
Redundans
• Redundans: at det samme data forekommer flere gange i databasen– Gør databasen unødvendigt stor– Databasen arbejder langsommere– Øger faren for inkonsistens
RHS – Informationsteknologi 18
Redundans
Navn Adresse Telefon Født FagPer Jensen Skolevej 12 31458791 17-07-1962 Engelsk
Per Jensen Skolevej 12 31458791 17-07-1962 IT
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Engelsk
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Økonomi
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Matematik
Aftenskoleelever
RHS – Informationsteknologi 19
Inkonsistens
• Inkonsistent: at data, som burde være ens, ikke er ens
• Hvilke data skal vi stole på…?
• Tæt forbundet med redundans
• Hvis der ikke er redundans, kan (simpel) inkonsistens ikke forekomme
RHS – Informationsteknologi 20
Inkonsistens
Navn Adresse Telefon Født FagPer Jensen Skolevej 12 31458791 17-07-1962 Engelsk
Per Jensen Skolevej 21 31458791 17-07-1962 IT
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Engelsk
Ditte Dorfmann Dalstrøget 3 43519982 11-08-1972 Økonomi
Ditte Dorfmann Bakkehøj 22 33128769 28-03-1976 Engelsk
Aftenskoleelever
RHS – Informationsteknologi 21
At lave et produkt
Kunde Designer Konstruktør
RHS – Informationsteknologi 22
At lave et produkt
Kunde Designer(Arkitekt)
Konstruktør(Murer)
For et hus
RHS – Informationsteknologi 23
At lave et produkt
Det ville være skønt med et nyt hus…
Mere plads, nemmere at gøre rent,…
Ethvert nyt produkt ud-springer af et ønske…
RHS – Informationsteknologi 24
At lave et produkt
Nogen skal realisere vores ønske…
Jeg vil gerne have et nyt hus, der er flot og lækkert, nemt at gøre rent, en stor stue, og…
Det kan jeg ikke arbejde med…
MurermesterJensen
RHS – Informationsteknologi 25
At lave et produkt
…så først må det specificeres korrekt
Jeg vil gerne have et nyt hus, der er flot og lækkert, nemt at gøre rent, en stor stue, og…
ArkitektLarsen
Rolig, du må være mere præcis i din
beskrivelse…
RHS – Informationsteknologi 26
At lave et produkt
Den som specificerer er måske ikke den der bygger…
Hmmmm,”stor stue” = 40-50 m2”nemt at gøre rent” = ét plan”flot” = sort tag + hvide sten…
RHS – Informationsteknologi 27
At lave et produkt
Designeren har værktøjer til at lave en specifikation
Mente du et hus som dette?Jeps, dog vil jeg gerne lige have rettet lidt til…
RHS – Informationsteknologi 28
At lave et produkt
Flere værktøjer til flere trin i specifikations-processen
Så er kunden glad, nu skal mureren bare have en mere detaljeret tegning
RHS – Informationsteknologi 29
At lave et produkt
Med tilstrækkeligt mange detaljer kan konstruktøren tage over!
Væg:2,30mFarvekode 4512
Vindue1,10x1,10Prod.nr12-387B
KontaktHøjde 40cm,30 cm fra hjørne
Se, det kan jeg godt arbejde
med!
RHS – Informationsteknologi 30
At lave et produkt
Kunde Designer(DB-Arkitekt)
Konstruktør(Access-koder)
For en database
RHS – Informationsteknologi 31
At lave et produkt
Det ville være skønt med et system til holde styr
på min aftenskole. Hvem er mine kursister, hvilke
fag tager de,…
Ethvert nyt produkt ud-springer af et ønske…
RHS – Informationsteknologi 32
At lave et produkt
Nogen skal realisere vores ønske…
Jeg vil gerne have en database til at holde styr på data for min aftenskole, med elever, lærere, kurser, og…
Det kan jeg ikke arbejde med…
Access-koderAndersen
RHS – Informationsteknologi 33
At lave et produkt
…så først må det specificeres korrekt
DB-ArkitektDamgaard
Rolig, du må være mere præcis i din
beskrivelse…
Jeg vil gerne have en database til at holde styr på data for min aftenskole, med elever, lærere, kurser, og…
RHS – Informationsteknologi 34
At lave et produkt
Den som specificerer er måske ikke den der bygger…
Hmmmm,Entiteterne er Lærer, Elev, Kursus, Klasse, Lokale, …Relationerne er Underviser, Afholdes i, Går i, … …
RHS – Informationsteknologi 35
At lave et produkt
Designeren har værktøjer til at lave en specifikation
Mente du, at databasen skal rumme data om disse entiteter og relationer? Jeps, dog vil
jeg gerne lige have rettet lidt til…
RHS – Informationsteknologi 36
At lave et produkt
Flere værktøjer til flere trin i specifikations-processen
Så er kunden glad, nu skal Access-koderen bare have et TS-diagram og en Data Dictionary at arbejde med
RHS – Informationsteknologi 37
At lave et produkt
Med tilstrækkeligt mange detaljer kan konstruktøren tage over!
Se, det kan jeg godt arbejde
med!