Avatar billede konder Nybegynder
18. december 2004 - 11:17 Der er 3 kommentarer og
1 løsning

Vejledning i planlægning af tabelstrukturer

Kan nogen give en forståelig forklaring på normalisering af tabeller. Jeg vil gerne lave et værktøj til mit arbejde som vicevært og har svært ved at komme fra en stor flad tabel til noget mere effektivt. Jeg har en masse felter: andelsnr, adresse, navn, km"2, loftsrum o.s.v. og desuden andre felter som: salg/køb, ombygninger, håndværkere, klager o.s.v. Adressen er ligesom mit udgangspunkt i det hele. Hvordan planlægger man bedst muligt? Jeg forstår f.eks. ikke "ingen felter må være afhængige af andre ordinære felter(ikke nøglefelter)"
Avatar billede konder Nybegynder
18. december 2004 - 11:53 #1
Jeg håber stadig på hjælp men må desværre gå og kommer først tilbage ca. kl. 18. Er det for få point?
Avatar billede janus_007 Nybegynder
18. december 2004 - 22:02 #2
Ja det er alt for få point *GG*

hmm du må poste lidt flere oplysninger om dine felter og meget gerne med rigtig data i dem.
Men som jeg lige ser det udfra det du har postet...

Andelsnummeret tolker jeg som værende unikt.
Andelsnummeret er bundet sammen med adressen, kvadratmeter, loftsrum og muligvis andelsværdi... Altså en slags stamdata omkring andelen om man vil :O)

Udover det så ser jeg en sammenhæng imellem andelsnummer og køb/ salg
En sammenhæng imellem andelsnummer og ombygninger
Hvis håndværkerne er tilknyttet andelen kunne der være en sammenhæng der ellers ville der være sammenhæng imellem ombygning og håndværkere

Klagen kan jo både være bundet op på håndværker eller andel, lad os sige andel i dette tilfælde.

Jeg går også udfra at andelen har nogle ejere og der skal være en sammenhæng imellem andel, ejer og klage.

Som en sammenfatning af alle mine formodninger  (de er jo taget udfra ganske få informationer) ville jeg lave flg. tabeller:
tabel 1: (primær nøgle andelsnummer)
andelsnummer, adresse, størrelse, loftsrum

tabel 2: (fremmed nøgle ejerid, fremmednøgle andelsnummer, unik index på ejer og andel)
andelsnummer, dato, ejerinfo
Hvem ejer den og hvem har ejet den?

tabel 3: (primær nøgle ejerid)
ejerid, navn, købsværdi

tabel 4: (fremmednøgle andelsnummer)
andelsnummer, dato, andelsværdi
Denne tabel vil indeholde en historik over andelsværdien og det er således altid den nyeste der gælder! Mange ville nok bare vælge at lave den som en enkelværdi der kunne stå i tabel 1, men jeg mener altid at historiske oplysninger er guld værd ;O)

tabel 5: (fremmednøgle ejerid)
ejerid, dato, klage

tabel 6: (fremmednøgle andelsnummer, fremmednøgle håndværkerid)
andelsnummer, dato, håndværkerID

osv osv.... Ovenstående kan gøres endnu mere detaljeret og informationsbærende, men jeg håber det giver dig et lige bedre indblik i normalisering af data, nogle vil mene at normalisering hurtigt kan tage overhånd, men det er igen kun et spørgsmål om temperament og behov. Min personlige mening er som udgangspunkt; normaliser til 3.grad og gør dine erfaringer og denormaliser evt. hvis det er påkrævet.
En denormalisering kan jo altid ske igennem et view, hvorimod en normalisering kan være meget kompliceret at indføre hvis designet først er taget i brug af forskellige enheder.
Avatar billede konder Nybegynder
19. december 2004 - 11:47 #3
Jeg takker meget og sidder og arbejder videre i mit ansigts sved. Du må gerne lægge et svar så du kan få del i pebernødderne.
Avatar billede janus_007 Nybegynder
19. december 2004 - 15:50 #4
Svar
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