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 heltalUsername
: SnorEmail
: SnorPassword
: SnorCreatedAt
: Dato og tidUpdatedAt
: Dato og tid
Bord: Carts
CartID
: Primær nøgle, unikt heltalUserID
: Fremmednøgle, der henviser til brugertabelCreatedAt
: Dato og tidUpdatedAt
: Dato og tid
Bord: CartItems
CartItemID
: Primær nøgle, unikt heltalCartID
: Fremmednøgle, der refererer til vogneProductID
: Produkttabel med reference til udenlandsk nøgleVariantID
: Udenlandsk nøgle, der refererer til ProductVariants tabelQuantity
: HeltalCreatedAt
: Dato og tidUpdatedAt
: Dato og tid
Bord: Products
ProductID
: Primær nøgle, unikt heltalName
: SnorDescription
: TekstStockQuantity
: HeltalCreatedAt
: Dato og tidUpdatedAt
: Dato og tid
Bord: ProductVariants
VariantID
: Primær nøgle, unikt heltalProductID
: Produkttabel med reference til udenlandsk nøgleName
: streng(f.eks. farve, størrelse)Value
: streng(f.eks. rød, XL)
Bord: VariantPrices
PriceID
: Primær nøgle, unikt heltalVariantID
: Udenlandsk nøgle, der refererer til ProductVariants tabelPrice
: DecimalCurrency
: 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.