Aquí hay un diseño de base de datos para la sección del carrito de compras en e-commerce, con productos que tienen múltiples atributos y múltiples precios:
Mesa: Users
UserID
: clave principal, entero únicoUsername
: CadenaEmail
: CadenaPassword
: CadenaCreatedAt
: Fecha y horaUpdatedAt
: Fecha y hora
Mesa: Carts
CartID
: clave principal, entero únicoUserID
: Tabla de usuarios de referencia de clave externaCreatedAt
: Fecha y horaUpdatedAt
: Fecha y hora
Mesa: CartItems
CartItemID
: clave principal, entero únicoCartID
: Tabla de carros de referencia de clave externaProductID
: Tabla de productos de referencia de clave externaVariantID
: Clave externa que hace referencia a la tabla ProductVariantsQuantity
: EnteroCreatedAt
: Fecha y horaUpdatedAt
: Fecha y hora
Mesa: Products
ProductID
: clave principal, entero únicoName
: CadenaDescription
: TextoStockQuantity
: EnteroCreatedAt
: Fecha y horaUpdatedAt
: Fecha y hora
Mesa: ProductVariants
VariantID
: clave principal, entero únicoProductID
: Tabla de productos de referencia de clave externaName
: Cadena(p. ej., Color, Tamaño)Value
: Cadena(p. ej., rojo, XL)
Mesa: VariantPrices
PriceID
: clave principal, entero únicoVariantID
: Clave externa que hace referencia a la tabla ProductVariantsPrice
: DecimalesCurrency
: Cadena(por ejemplo, USD, VND)
En este diseño, la CartItems
tabla hará referencia a la ProductVariants
tabla para identificar la variante específica de un producto en el carrito. La VariantPrices
tabla almacena información de precios para cada variante de producto en función de diferentes monedas.
Como siempre, el diseño de la base de datos se puede ajustar para adaptarse a los requisitos específicos de su proyecto y cómo desea administrar el carrito de compras y los productos.