Avatar billede johncleese Nybegynder
08. marts 2004 - 12:07 Der er 15 kommentarer og
1 løsning

normalform af 3 grad!!

helo.
hvordan vil i lave det her om fra en 1 normalform til 3 normal form. trin for trin.. ->

M_ID, Fornavn, Efternavn, AFD_ID, Afd_navn. afd_adresse, Stillings type, ¨månedsløn, Projekt, Varighed


På forhånd tak. :)
08. marts 2004 - 12:19 #1
Forklar felterne:

Stillingstype
Månedsløn
Projekt
Varighed

For at opfylde reglerne for 1. normalform skal den afd_adresse splittes op i f.eks. adresse, postnr og by (og måske flere)
Avatar billede arne_v Ekspert
08. marts 2004 - 12:23 #2
Som jeg opfatter dine felter skal du bare:

M_ID, Fornavn, Efternavn, AFD_ID, Stillings type, månedsløn, Projekt, Varighed

AFD_ID, Afd_navn, afd_adresse

da jeg ikk ekan se andre afhængigheder.
Avatar billede johncleese Nybegynder
08. marts 2004 - 12:35 #3
jeg tror ikke der skulle være nogen "ben" idet. så arne jeg har lige nogen point til dig.! :)
08. marts 2004 - 12:39 #4
Det vil sige, at der ikke er sammenhæng mellem felterne stillingstype og månedsløn hhv. projekt og varighed.
Avatar billede arne_v Ekspert
08. marts 2004 - 12:46 #5
Medmindre man er offentlig ansat er det normalt ikke muligt at udlede løn
udfra stilling.

Hvis varighed er projektets varighed, så skal det skilles ud, men hvis det
er ansættelsens varighed eller medarbejderens tilknytning til projektet, så
er der ikke nogen direkte sammenhæng.
Avatar billede arne_v Ekspert
08. marts 2004 - 12:47 #6
svar
Avatar billede arne_v Ekspert
08. marts 2004 - 12:48 #7
Det er i parentes bemærket ikke noget unormalt i at korrekt normalisering
kræver en pæn indsigt i problem domænet.
Avatar billede johncleese Nybegynder
08. marts 2004 - 12:50 #8
Hov vent! Den er vidst forkert. for en medarbejder ka godt være på 2 projekter på en gang.. så den bliver ik så go så
Avatar billede johncleese Nybegynder
08. marts 2004 - 12:52 #9
dvs at en medarbejder ka være på 2 projekter i en afdeling f.eks. så burde man jo lave nogen andre tabeller for ikke at skabe unøvendig data eller??
Avatar billede arne_v Ekspert
08. marts 2004 - 12:53 #10
Så skal medarbejde-projekt jo nok være en M:M relation og derfor have
sin egen tabel.
Avatar billede johncleese Nybegynder
08. marts 2004 - 13:31 #11
æhm det kan jeg ikke helt forstå. hvordan gør man det?? hvaffor felter skal realateres?
Avatar billede johncleese Nybegynder
08. marts 2004 - 13:33 #12
nååhh jeg tror jeg har fattet den. men så er man nød tilat oprette en til nøgle til projekt tabellen ikke sandt??
08. marts 2004 - 13:37 #13
arne_v: Jeg kan ikke ud af spørgsmålet se, at der ikke er sammenhæng mellem stillingstype og månedsløn. Du har da ret i at der sandsynligvis ikke er nogen sammenhæng; men det er dog johncleese, der kender problemstillingen, og derfor bør svare på det.

Du kan ikke oprette en mange-til-mange relation direkte mellem 2 tabeller. Løsningen er at oprette en 3. tabel, der danner denne N:M-relation.

F.eks.:
Medarbejdertabel: M_ID, Fornavn....
Projekttabel: P_ID, projekt........
MedarbProjekt: M_ID, P_ID......

I den sidste tabel er nøglen sammensat af M_ID og P_ID

Hvor varighed skal placeres afhænger stadig af hvad det er for en oplysning - er det projektetes vareighed, eller.....?
Avatar billede johncleese Nybegynder
08. marts 2004 - 14:24 #14
Skal man lave en ny Primær ID for projekt ?
08. marts 2004 - 14:25 #15
JA, i projekttabellen skal P_ID være primærnøgle.
09. marts 2004 - 15:39 #16
Tak fordi jeg fik lov til at hjælpe dig!
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
Computerworld tilbyder specialiserede kurser i database-management

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