6238 Databaser Agenda/ER diagrammer

From Teknologisk videncenter
< 6238 Databaser Agenda
Revision as of 09:29, 29 October 2015 by Orso (talk | contribs) (Løsning)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

6238 Databaser Agenda ER Diagrammer

Intro til Database design

Her følger en kort intro til de grundlæggende elementer i database design.

En simpel tabel/ER-Diagram

6238 Databaser Agenda ER Diagrammer1.png

6238 Databaser Agenda ER Diagrammer2.gif

Entitet (Firkanter)

Attributter (Cirkler)

Dilemma 1

6238 Databaser Agenda ER Diagrammer3.png

Vi har fået to nye medarbejdere i produktionen, Frederik og Gert.

Samtidig har produktionen fået en ny leder Kurt, men det har man glemt at opdatere for Daniel og Erik.

Resultatet er inkonsistente data

Løsning

6238 Databaser Agenda ER Diagrammer4.png

6238 Databaser Agenda ER Diagrammer5.png

Vi opretter en ny table som hedder afdeling, hvor alle oplysninger om afdelingen ligger. Navn er nøgle for afdeling og fremmednøgle på medarbejder.

Løsning som ER-Diagram

6238 Databaser Agenda ER Diagrammer6.gif

Entitet (Firkanter)

Attributter (Cirkler)

Relation (Rombe)

Navn er en nøgle attribut og derfor understreget

Kardinalitet Fortæller at en afdeling kan have mange medarbejdere men en medarbejder kan kun være i en afdeling.

Dobbelt stregen fortæller at en medarbejder skal være tilknyttet en afdeling (Tvungen deltagelse)

Dilemma 2

Gert og Daniel har fået en arbejdsmobil og har derfor 2 telefonnumre, men der er kun et felt.

6238 Databaser Agenda ER Diagrammer8.png

Aldrig indsætte ekstra felt til flerværdi attributter. Virker kun indtil personen får en tredje telefon, og hvad med de som kun har en.

Løsning

6238 Databaser Agenda ER Diagrammer9.png 6238 Databaser Agenda ER Diagrammer10.png 6238 Databaser Agenda ER Diagrammer11.png

6238 Databaser Agenda ER Diagrammer12.gif

Vi indsætter en tredje tabel med telefonnumre. I ER diagrammet markeres attributten som flerværdi.

Dilemma 3

Hans, Inge og Kurt er også medarbejdere, med email og telefon etc.

Løsning

6238 Databaser Agenda ER Diagrammer19.png 6238 Databaser Agenda ER Diagrammer16.png 6238 Databaser Agenda ER Diagrammer17.png


Vi erstatter leder navn med LederNr der henviser til lederens medarbejderNr. I ER-Diagrammet indsættes en ny relation som peger tilbage til medarbejder.


6238 Databaser Agenda ER Diagrammer18.gif

Entitet (Firkant)

Attribut (Cirkel)

Flerværdi attribut (Dobbelt cirkel)

Relation (Rombe)

Kardinalitet (1:1, 1:N, N:N etc.)

Frivillig eller tvungen deltagelse (Enkelt eller dobbel streg)

Det færdige design

6238 Databaser Agenda ER Diagrammer20.png

Opgave

Viborg bibliotek har en database med deres bøger. For hver bog registreres Title, Forfatter og Genre.

Når en låner låner en bog registreres dato for udlånet, på låneren registreres Navn, Email og Telefon nr.

Biblioteket har også nogle bibliotekarer, hver bibliotekar er ansvarlig for bøgerne i en eller flere Genre.

Tegn et ER-Diagram for løsningen.

Chen eller Crows feet

Der findes to notations former for database design

Chen

601,5px

Crows feet

445,5px

181,4375px