Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/02/2011, 02:59
napartar
 
Fecha de Ingreso: noviembre-2008
Mensajes: 59
Antigüedad: 16 años
Puntos: 1
Respuesta: Duda en carrito de la compra

No me gusta nada como has planteado el modelo de la base de datos. Creo que te bastaría con estas tablas planteadas de esta forma:

Producto
---------
-IdProducto (PK)
-Descripcion
-Precio

PedidoProducto
--------
-IdPedidoProducto (PK)
-IdPedido (FK)
-IdProducto (FK)
-Cantidad

Pedido
-------
-IdPedido (PK)
-IdUsuario (FK)

De esta manera se utiliza la tabla pedidoproducto para asociar el pedido que ha realizado el cliente con el producto. El precio lo tendrías que calcular en el código según la cantidad y el precio de cada producto, pero creo que es la manera más limpia.

Cada línea que añadas en el carrito (producto-cantidad) creará una nueva tupla en esta tabla, y se creará una única tupla por pedido global (de todo el carrito). La tabla de productos no se ve modificada, a no ser que quieras añadir un cantidad_stock para controlar de cuantos dispones en almacén.

Un saludo!

Última edición por napartar; 24/02/2011 a las 06:36