|
| Design af tabeller til webshop Fra : Torben |
Dato : 14-01-07 16:36 |
|
Hejsa
Jeg har brug for hjælp til at designe tabeller til en (simpel)
webshop. Jeg har fat i selve grundprincipperne i det, men jeg er i
tvivl om, hvordan jeg skal håndtere variationer for et givent produkt.
Jeg arbejder pt. med følgende tabeller:
tbl_bruger
tbl_produktkategori
tbl_produkt (FK til produktkategoriid)
tbl_ordre (FK til brugerid)
tbl_ordrelinje (FK til ordreid og produktid)
Mit spørgsmål går på, hvordan jeg skal lagre oplysninger om fx.
størrelse på tøj (M, L, XL etc.) eller farve (rød, blå, grøn
etc.). Brugerens valg skal selvfølgelig kunne aflæses i
tbl_ordrelinje, men hvordan knytter jeg forskellige produktattributter
op på de produkter, som måtte have sådanne attributter? (det er
nemlig ikke alle produkter der har disse attributter).
Venlig hilsen
Torben
| |
Martin (14-01-2007)
| Kommentar Fra : Martin |
Dato : 14-01-07 16:53 |
|
Torben wrote:
> Hejsa
>
> Jeg har brug for hjælp til at designe tabeller til en (simpel)
> webshop. Jeg har fat i selve grundprincipperne i det, men jeg er i
> tvivl om, hvordan jeg skal håndtere variationer for et givent produkt.
> Jeg arbejder pt. med følgende tabeller:
>
> tbl_bruger
> tbl_produktkategori
> tbl_produkt (FK til produktkategoriid)
> tbl_ordre (FK til brugerid)
> tbl_ordrelinje (FK til ordreid og produktid)
>
> Mit spørgsmål går på, hvordan jeg skal lagre oplysninger om fx.
> størrelse på tøj (M, L, XL etc.) eller farve (rød, blå, grøn
> etc.). Brugerens valg skal selvfølgelig kunne aflæses i
> tbl_ordrelinje, men hvordan knytter jeg forskellige produktattributter
> op på de produkter, som måtte have sådanne attributter? (det er
> nemlig ikke alle produkter der har disse attributter).
Jeg har lavet en ekstra tabel kaldet tbl_varianter, i denne er der så
en FK til produkt.
i min tabel er der noget ala
navn (her er det så enten blå/grøn/gul osv.)
pris (fx 20.00)
plus/minus (plus/minus af hvad standard prisen er i tbl_produkt)
| |
Torben (14-01-2007)
| Kommentar Fra : Torben |
Dato : 14-01-07 17:20 |
|
> Jeg har lavet en ekstra tabel kaldet tbl_varianter, i denne er der så
> en FK til produkt.
> i min tabel er der noget ala
> navn (her er det så enten blå/grøn/gul osv.)
> pris (fx 20.00)
> plus/minus (plus/minus af hvad standard prisen er i tbl_produkt)
Det er også noget i den stil jeg har overvejet, men hvorfor har du
både en kolonne der hedder "pris" og en der hedder "plus/minus" (og du
har også en pris-kolonne i din tbl_produkt!)?
/Torben
| |
Martin (15-01-2007)
| Kommentar Fra : Martin |
Dato : 15-01-07 02:02 |
|
Torben wrote:
> Det er også noget i den stil jeg har overvejet, men hvorfor har du
> både en kolonne der hedder "pris" og en der hedder "plus/minus" (og du
> har også en pris-kolonne i din tbl_produkt!)?
I nogle produkter koster en "lyserød trøje" mere end en "hvid trøje"
(bare eksempler) så derfor er det muligt at vælge først plus/minus i
feltet plus/minus (ENUM type) og derefter hvor meget/mindre prisen pr
variant skal være end "normal" prisen.
Endnu et eksempel
Produkt navn:
Hvid Toyota Corolla
Pris: 129000
Variant:
Lakeret
Plus/Minus: +
Pris: 2995
Variant
Uden anlæg
Plus/Minus: -
Pris: 800
PS.
Jeg prøvede bare at skrive -800 i tbl_variant, men synes ikke det
rigtigt fungeret altid, så derfor så lavede jeg plus/minus feltet, så
var jeg da ihvertfald sikker på det virkede hver gang :)
| |
|
|