6238 Databaser Agenda/ER diagrammer
Contents
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
Entitet (Firkanter)
Attributter (Cirkler)
Dilemma 1
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
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
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.
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
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
Vi erstatter leder navn med LederNr der henviser til lederens medarbejderNr. I ER-Diagrammet indsættes en ny relation som peger tilbage til medarbejder.
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
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
Crows feet