08. maj 2003 - 13:16Der er
3 kommentarer og 1 løsning
Database struktur...
Jeg har en db struktur som indeholder en række tabeller der indeholder de samme kolonnenavne - dvs. tabelnavnene er: materiale, nyheder, forside kolonnenavnene er ens i alle tabeller: head, main, picture. Spørgsmålet er om det så ville være smartere at ligge alle disse tabeller over i én tabel - det ville så være nødvendigt at oprette en ekstra kolonne som overtager tabelnavnene.
Jeg kan forestille mig at det ville gøre søgetiden stor hvis der blev oprettet mange poster i dette ene table.
super - placer et svar - det ville være fint hvis du kunne uddybe lidt om hvorfor det er en bedre løsning og evt. forklare hvornår det ikke er en god ide!
Set fra en SQL-synspunkt kan du nu lave forespørgsler, der dækker alle de informationer du har, hvilket ikke er realistisk med flere tabeller.
Udførselsmæssigt vil en databaseserver for flere tabeller skulle registrere en række oplysninger, som der nu kun skal gøres én gang. Det er lidt "dyrt" at åbne en tabel.
Med et index på et felt gør du så søgning (på formen felt='nyheder') så effektiv som det rimeligvis kan gøres.
Størrelse og antal af tabeller, og anvendelseshyppighed, kan så gøre at man rent faktisk kan opnå et hurtigere resultat ved flere tabeller, men så skal anvendelsen være meget sporadisk. Men uanset dette, er der argumentet med SQL-forespørgsler.
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.