Avatar billede lacosanostra Nybegynder
03. november 2004 - 23:53 Der er 4 kommentarer

Bedst mulige database struktur i en shop?

Jeg er igang med at bygge en shop løsning, og sidder nu og tænker over hvordan jeg får bygget den bedst mulige db struktur mht produkter, priser, lagerstatus mm.

Opgaven er:
Et produkt kan indeholde mange varianter. Fx. Kan eet produkt eksisterer i 3 forskellige farver, hvoraf der er en uafhængig pris for hver. Oveni dette kan hvert produkt også have forskellige tilknytnings produkter som også giver en anden pris.

Eksempel:
Produktet er en mobiltelefon, Nokia 3210. Denne Nokia findes i Rød, Blå og Orange.
Nokia 3210 Rød kan købes med Telia abb, TDC abb og uden abb.
Nokia 3210 Blå kan købes med TDC og Debitel abb.
Nokia 3210 Orange kan kun købes uden abb.

Alle overstående har hver for sig en pris og en lagerstatus. Dvs. Nokia 3210 Rød med TDC koster 500,- og der er 3 på lager. Nokia 3210 Rød med Telia koster 100,- og der er 10 på lager ... osv.

Dertil kommer at der fx. også kan blive solgt en lampe som der ikke skal sættes farve på og ikke har nogle tilknytning produkter. Den skal selvfølgelig også have en pris og en lagerstatus.

Håber nogle af jer har en god løsning. Mit mål er at få så få tabeller som muligt, og jeg er overbevist om det er muligt. Min hjerne kører dog i selvsving når den skal finde en god løsning.

På forhånd tak. :-)
Avatar billede arne_v Ekspert
04. november 2004 - 07:47 #1
tabel vare
-----------
vareid
varenavn
farve
abonnement
pris
lager

vareid er primær nøgle

varenavn, farve og abonnement har så et unikt index som forhindrer duplikater

Det må være den simpleste tabel struktur
Avatar billede lacosanostra Nybegynder
04. november 2004 - 10:00 #2
Jeg glemte vist at nævne at "abonnement" også er et produkt i sig selv. Dvs Nokia 3210 m. TDC er en bundle af 2 produkter fra produkt databasen, Nemlig en Nokia og et TDC abonnement.

arne v > Hvis vi tager mit eksempel med Nokia telefonen, så er der fra kundens synspunkt kun tale om eet produkt, hvis man kan sige det sådan. Dvs. kunden kan altså se alle de Nokia modeller der bliver solgt fra shoppen (uanset farve og tilknytning til evt. abb). Dvs. det er først når kunden klikker sig ind på den specifikke Nokia model at han/hun kan se hvilke farver denne kan fåes i og med hvilkke abb. typer denne fåes med.
Avatar billede arne_v Ekspert
04. november 2004 - 18:57 #3
Så måske:

tabel vare
----------
vareid, PK
varenavn

tabel rigtigvare
----------------
rigtigvareid, PK
vareid, FK->tabel vare
farve
bundledmed, FK->tabel vare
pris
lager
Avatar billede arne_v Ekspert
21. november 2004 - 20:32 #4
OK ?
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