Avatar billede supervisor1 Nybegynder
17. marts 2003 - 12:01 Der er 8 kommentarer

Normalisering

hvordan får jeg denne tabel i 3 normalform ??


nr-navn-adresse-post/nr-fork-kursusnavn-dato-fork-kursusnavn-dato
Avatar billede bikerbirk Nybegynder
17. marts 2003 - 12:02 #1
supervisor1, uddyb venligst! :)

/BikerBirk
/It's a bad day for die in!
Avatar billede humlum Nybegynder
17. marts 2003 - 12:16 #2
du skal fjerne de kolonner de er flere af (dato, kursusnavn osv.) og lave en primær nøgle - det er første normalform

2 normalform - kolonner i tabellen er afhængig af primærnøglen

3 normalform - skal du sørge for at alle kolonner er fuldt afhængige af primærnøglen og ikke er afhængige af andre kolonner/nøgler i andre tabeller (transitiv afhængighed)
Avatar billede jkrons Professor
18. marts 2003 - 08:42 #3
Det er svært at normalisere, når man ikke kender forudsætningerne, men hvis fork er nøgle for kursusnavn og nr for personinformationerner, OG en person kan deltage på flere kurser, men kun på hvert kursus en gang, kunne det tænkes at se sådan ud:

Tabel1:
Nr, Navn, Adresse, Postnr (Nr er primærnøgle)

Tabel2:
Fork, Kursusnavn (fork er primærnøgle

Tabel3:
Nr, Fork, dato (Nr+Fork) er samnmensat primærnøgle.

Mellem tabel1 og tabel3 samt mellem tabel2 og tabel3 skal der være en 1:N relation med en-siden i hhv. Tabel1 og Tabel2.

Kan en person kun deltage på det sanmme kursus flere gange, skal nøglen i Tabel3 bestå af alle tre felter.

Kan en person kun gå på et eneste kursus der Tabel3 overflødig. Så skal der kun være to tabeller:

Nr, Navn, Adresse, Postnr, Fork, Dato (med Nr som primærnøgle)
og
Fork, Kursusnavn (med Fork som kursusnavn
Avatar billede eyvind Seniormester
18. marts 2003 - 21:54 #4
Der mangler en 4. tabel By postnr. 1-mange, der er jo kun "een by" som mange kan bo i.
Kursus bør være i en tabel, mange går på samme kursus.
Kan man gå på flere kurser bør der også være en kursustype (en tabel mere) og se sådan ud. Kursustype en til mange kurser til en deltager.
Alt hvad der kan stå to steder skal i sin egen tabel - 3.normal form
Noget af det virker overflødigt, men det var jo 3.NF ikke?
Eyvind.
Avatar billede jkrons Professor
19. marts 2003 - 08:37 #5
eyvind-> Grunden til at jeg ikke har en postnummertabel er, at By slet ikke forekommer i oplægget!  Men er der et bynavn, hardu selvfølgelig helt ret.

Kursus er allerede i en tabel, nemlkig Tabel2 i mit forslag. Selv om man kan gå på flere kurser, er der jo ingen der siger, at man nødvendigvis skal dele dem op i flere typer. Hvis man undlader det, er der heller ingen grund til at lave en kursustype tabel.

Min løsning er alene lavet på grund af de data, der var til rådighed i det oprindelige spøergsmål.
Avatar billede eyvind Seniormester
19. marts 2003 - 11:37 #6
Ja Ja
Det var også bare lige hvis den nu skulle ud i 3.NF
Eyvind.
Avatar billede jkrons Professor
19. marts 2003 - 14:02 #7
Jamen min løsning er 3NF! Altså hvis der ikke er andre data end de opgivne.
Avatar billede jkrons Professor
19. marts 2003 - 23:27 #8
supervisor->  Hvordan går det?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester