Normal former i en database Jan Christiansen Nyborg Gymnasium
Hvorfor normalformer? Hvorfor... Når man designer databaser gælder det om at normalisere sine tabeller, hvilket vil sige, at man sørger for at mindske mængden af overflødige data mest muligt. Ideen i normalisering er... Uden at vi skal blive alt for teoretiske her – så handler det om at man ikke skal gemme sine data i en eneste stor tabel, da det giver alt for meget redundans. Man skal i stedet splitte sine tabeller op i flere mindre tabeller, som man så knytter sammen ved hjælp af relationer. Relationer... Ved hjælp af disse relationer er det muligt at arbejde med oplysningerne, som om de var placeret i en og samme tabel – men uden de ulemper, som vi har omtalt indtil nu.
Atomistiske værdier Dårligt design/Godt design Fordele ved normalisering
På vej mod 1. normalform Flere kolonner mere opdeling
1. normalform Sammensat nøgle: En nøgle som består af mere end et nøgle felt!
En forespørgsel om antal ”spegesild” på 1. normalform.
2. normalform Entitet: En enhed som fx. en kunde, en ordrer… Entitet – en person Cpr. Nr. – primær nøgle Fornavn Efternavn Adresse By Post nr. Og så videre….
På vej mod 2. normalform kræver opdeling i flere (her 2) tabeller
Hvor er relationen mellem de 2 tabeller? Hvad er en fremmed-nøgle?
2. Normalform Resultat af forespørgsel på ”Chokolade”
3. Normalform Ordrelinie-tabellen bliver opdelt yderligere Bør der være en pris på produktet?
Relationers forbindelse Hvad betyder disse 3 indstillinger ?
Opret følgende database Viden du skal vide – tid til onenote notater : Nøgler: Fremmede-nøgle, sammensat- nøgle, primær-nøgle Relationer: 1 til 1, 1 til mange, mange til mange Ord: Dubletter, Indekseret, Entiteter, Datatyper, E/R diagram, Atomisk, Attribut, Redundans Operatorer og syntaks:, =, or, and, not Andet? Overvej hvorfor prisen findes i begge tabeller? Tak til Benny Dyhr Thomsen for inspiration