Progettazione di database per E-Commerce carrello con varianti di prodotto

Ecco un design del database per la sezione del carrello degli acquisti in e-commerce, con prodotti con più attributi e più prezzi:

Tavolo: Users

  • UserID: chiave primaria, numero intero univoco
  • Username: Corda
  • Email: Corda
  • Password: Corda
  • CreatedAt: Data e ora
  • UpdatedAt: Data e ora

Tavolo: Carts

  • CartID: chiave primaria, numero intero univoco
  • UserID: Chiave esterna che fa riferimento alla tabella Utenti
  • CreatedAt: Data e ora
  • UpdatedAt: Data e ora

Tavolo: CartItems

  • CartItemID: chiave primaria, numero intero univoco
  • CartID: Chiave esterna che fa riferimento alla tabella Carts
  • ProductID: Chiave esterna che fa riferimento alla tabella Prodotti
  • VariantID: Chiave esterna che fa riferimento alla tabella ProductVariants
  • Quantity: Numero intero
  • CreatedAt: Data e ora
  • UpdatedAt: Data e ora

Tavolo: Products

  • ProductID: chiave primaria, numero intero univoco
  • Name: Corda
  • Description: Testo
  • StockQuantity: Numero intero
  • CreatedAt: Data e ora
  • UpdatedAt: Data e ora

Tavolo: ProductVariants

  • VariantID: chiave primaria, numero intero univoco
  • ProductID: Chiave esterna che fa riferimento alla tabella Prodotti
  • Name: stringa(ad esempio, colore, dimensione)
  • Value: Stringa(ad es., Rosso, XL)

Tavolo: VariantPrices

  • PriceID: chiave primaria, numero intero univoco
  • VariantID: Chiave esterna che fa riferimento alla tabella ProductVariants
  • Price: decimale
  • Currency: stringa(ad es. USD, VND)

In questo disegno, la CartItems tabella farà riferimento alla ProductVariants tabella per identificare la variante specifica di un prodotto nel carrello. La VariantPrices  tabella memorizza le informazioni sui prezzi per ogni variante di prodotto in base a diverse valute.

Come sempre, il design del database può essere adattato per soddisfare i requisiti specifici del tuo progetto e il modo in cui desideri gestire il carrello e i prodotti.