Databasedesign til E-Commerce indkøbskurv med produktvarianter

Her er et databasedesign til indkøbskurvsektionen i e-commerce, med produkter med flere attributter og flere priser:

Bord: Users

  • UserID: Primær nøgle, unikt heltal
  • Username: Snor
  • Email: Snor
  • Password: Snor
  • CreatedAt: Dato og tid
  • UpdatedAt: Dato og tid

Bord: Carts

  • CartID: Primær nøgle, unikt heltal
  • UserID: Fremmednøgle, der henviser til brugertabel
  • CreatedAt: Dato og tid
  • UpdatedAt: Dato og tid

Bord: CartItems

  • CartItemID: Primær nøgle, unikt heltal
  • CartID: Fremmednøgle, der refererer til vogne
  • ProductID: Produkttabel med reference til udenlandsk nøgle
  • VariantID: Udenlandsk nøgle, der refererer til ProductVariants tabel
  • Quantity: Heltal
  • CreatedAt: Dato og tid
  • UpdatedAt: Dato og tid

Bord: Products

  • ProductID: Primær nøgle, unikt heltal
  • Name: Snor
  • Description: Tekst
  • StockQuantity: Heltal
  • CreatedAt: Dato og tid
  • UpdatedAt: Dato og tid

Bord: ProductVariants

  • VariantID: Primær nøgle, unikt heltal
  • ProductID: Produkttabel med reference til udenlandsk nøgle
  • Name: streng(f.eks. farve, størrelse)
  • Value: streng(f.eks. rød, XL)

Bord: VariantPrices

  • PriceID: Primær nøgle, unikt heltal
  • VariantID: Udenlandsk nøgle, der refererer til ProductVariants tabel
  • Price: Decimal
  • Currency: Streng(f.eks. USD, VND)

I dette design CartItems vil tabellen referere til ProductVariants tabellen for at identificere den specifikke variant af et produkt i kurven. Tabellen VariantPrices  gemmer prisoplysninger for hver produktvariant baseret på forskellige valutaer.

Som altid kan databasedesign justeres, så det passer til de specifikke krav til dit projekt, og hvordan du vil administrere indkøbskurven og produkterne.