Difference between revisions of "6238 Databaser Agenda/ER diagrammer"

From Teknologisk videncenter
Jump to: navigation, search
(Løsning)
 
(28 intermediate revisions by the same user not shown)
Line 6: Line 6:
  
 
[[File:6238 Databaser Agenda ER Diagrammer2.gif|279px]]
 
[[File:6238 Databaser Agenda ER Diagrammer2.gif|279px]]
 +
 +
Entitet (Firkanter)
 +
 +
Attributter (Cirkler)
  
 
==Dilemma 1==
 
==Dilemma 1==
[[File:6238 Databaser Agenda ER Diagrammer3.png|648px]]
+
[[File:6238 Databaser Agenda ER Diagrammer3.png|848px]]
 +
 
 +
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===
 +
[[File:6238 Databaser Agenda ER Diagrammer4.png|800px]]
  
==Løsning==
+
[[File:6238 Databaser Agenda ER Diagrammer5.png|200px]]
[[File:6238 Databaser Agenda ER Diagrammer4.png|648px]]
 
  
[[File:6238 Databaser Agenda ER Diagrammer5.png|144px]]
+
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==
+
===Løsning som ER-Diagram===
 
[[File:6238 Databaser Agenda ER Diagrammer6.gif|483px]]
 
[[File:6238 Databaser Agenda ER Diagrammer6.gif|483px]]
 +
 +
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==
 
==Dilemma 2==
[[File:6238 Databaser Agenda ER Diagrammer7.png|647px]]
+
Gert og Daniel har fået en arbejdsmobil og har derfor 2 telefonnumre, men der er kun et felt.
  
[[File:6238 Databaser Agenda ER Diagrammer8.png|342px]]
+
[[File:6238 Databaser Agenda ER Diagrammer8.png|442px]]
  
==Løsning==
+
'''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===
 
[[File:6238 Databaser Agenda ER Diagrammer9.png|137px]]
 
[[File:6238 Databaser Agenda ER Diagrammer9.png|137px]]
 +
[[File:6238 Databaser Agenda ER Diagrammer10.png|411px]]
 +
[[File:6238 Databaser Agenda ER Diagrammer11.png|200px]]
  
[[File:6238 Databaser Agenda ER Diagrammer10.png|311px]]
+
[[File:6238 Databaser Agenda ER Diagrammer12.gif|483px]]
  
[[File:6238 Databaser Agenda ER Diagrammer11.png|144px]]
+
Vi indsætter en tredje tabel med telefonnumre. I ER diagrammet markeres attributten som flerværdi.
  
[[File:6238 Databaser Agenda ER Diagrammer12.gif|483px]]
+
==Dilemma 3==
  
==Dilemma==
 
[[File:6238 Databaser Agenda ER Diagrammer13.png|144px]]
 
  
[[File:6238 Databaser Agenda ER Diagrammer14.png|298px]]
+
Hans, Inge og Kurt er også medarbejdere, med email og telefon etc.
  
[[File:6238 Databaser Agenda ER Diagrammer15.png|101px]]
+
===Løsning===
 +
[[File:6238 Databaser Agenda ER Diagrammer19.png|151px]]
 +
[[File:6238 Databaser Agenda ER Diagrammer16.png|411px]]
 +
[[File:6238 Databaser Agenda ER Diagrammer17.png|86px]]
  
==Løsning==
 
[[File:6238 Databaser Agenda ER Diagrammer16.png|311px]]
 
  
[[File:6238 Databaser Agenda ER Diagrammer17.png|86px]]
+
Vi erstatter leder navn med LederNr der henviser til lederens medarbejderNr. I ER-Diagrammet indsættes en ny relation som peger tilbage til medarbejder.
 +
 
  
 
[[File:6238 Databaser Agenda ER Diagrammer18.gif|483px]]
 
[[File:6238 Databaser Agenda ER Diagrammer18.gif|483px]]
  
[[File:6238 Databaser Agenda ER Diagrammer19.png|101px]]
+
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==
 
==Det færdige design==
 
[[File:6238 Databaser Agenda ER Diagrammer20.png|648px]]
 
[[File:6238 Databaser Agenda ER Diagrammer20.png|648px]]
 +
 +
==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 ==
 
==Chen eller Crows feet ==
© Mercantec 2014
+
Der findes to notations former for database design
 +
 
 +
Chen
 +
 
 
[[File:6238 Databaser Agenda ER Diagrammer21.gif|601,5px]]
 
[[File:6238 Databaser Agenda ER Diagrammer21.gif|601,5px]]
 +
 +
Crows feet
  
 
[[File:6238 Databaser Agenda ER Diagrammer22.gif|445,5px]]
 
[[File:6238 Databaser Agenda ER Diagrammer22.gif|445,5px]]
  
 
[[File:6238 Databaser Agenda ER Diagrammer23.gif|181,4375px]]
 
[[File:6238 Databaser Agenda ER Diagrammer23.gif|181,4375px]]

Latest revision as of 09:29, 29 October 2015

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