04. juni 2009 - 10:50Der er
3 kommentarer og 1 løsning
Databasedesign med forskellige produkttyper
Jeg er ved at designe en database, der har to forskellige produkttyper; kurser og bøger.
Pt. ligger de i hver deres tabel:
Kurser - Antal pladser - Mad inkluderet - ...
Bøger - Forfatter - Antal sider - ...
Tabellerne er ret forskellige, og andre tabeller refererer til kursus-tabellen med info om afholdelsesdatoer/steder, materiale etc.
Det korte af det lange er, at jeg gerne så disse to tabeller kombineret ifm. et e-com-system, så det fx er nok bare at sætte et produkt-id i ordre-linje-tabellen.
Der er ikke nødvendigvis én rigtig måde at gøre det på - men to forslag kunne være følgende;
Alle produkter må have noget til fælles - fx id, navn, bekrivelse, pris, tilbudspris osv og disse lægges i en produkt-tabel. Ved siden af denne tabel laves to tabeller med hver sine specifikke oplysninger til hver kategori. Dette vil være en let tilgang som det ser ud her og nu - men det vil også betyde ændringer i databasen ved tilgang af en ny kategori eller felttype.
Det andet forslag ligner lidt i og med du stadig vil have en produkttabel med de data der altid er til stede på et produkt, men udover det er resten dynamisk. Ved siden af produkttabellen har du en tabel med kategorier, en tabel med felttyper (fx forfatter, antal pladser og antal sider), en tabel med produktfeltdata (som binder et produkt sammen med 0, 1 eller flere felttyper samt værdien dertil) og eventuelt en tabel der binder kategorier og felttyper sammen så du er sikker på der kun kan vælges felttyper til et produkt ud fra et defineret mønster.
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.