Modelo de Base de Datos para Un Sistema DEFINITIVO
Modelo de Base de Datos para Un Sistema DEFINITIVO
Modelo de Base de Datos para Un Sistema DEFINITIVO
un sistema de facturación
PRODUCTO
CLIENTE
FACTURA
#Id-producto
#Identificación del cliente
#Id-factura *Categoría producto
*Nombre-cliente
*Fecha de factura *Nombre producto
*Dirección-cliente
*Stock
*Teléfono del cliente
*Precio producto
MODO DE PAGO
#Número de pago
*Forma de pago
*Detalles de pago
Explicación de la relaciones anteriores:
• Existe una relación uno a muchos entre cliente y factura (Un solo cliente puede tener
muchas facturas, pero debe tener al menos 1, no viceversa).
• Existe una relación uno a muchos entre vendedor y facturas (Un solo vendedor puede
dar muchas facturas, pero debe dar al menos 1, no viceversa).
• Existe una relación uno a muchos entre factura y método de pago, donde el negocio
recibe un pago por los productos y el cliente puede usar varios métodos de pago.
• Pero, existe una relación muchos a muchos entre las entidades PRODUCTO y
FACTURA, ya que una factura puede tener muchos productos, y un producto puede estar
en muchas facturas (Debemos reemplazar esta relación dada su complejidad).
Solución a la relación compleja muchos a muchos entre
producto y factura.
• Creamos una nueva entidad que relaciona estas dos entidades: La denominaremos DETALLE y le asignamos su llave foránea de detalle para
ordenar mejor los datos.
VENDEDOR
PRODUCTO
CLIENTE
FACTURA DETALLE
#Id-producto
#Id-cliente
#Id-factura #número detalle *Categoría producto
*Nombre-cliente
*Fecha de factura #Id-factura *Nombre producto
*Dirección-cliente
*Cantidad de producto *Stock
*Teléfono del cliente
*Precio producto
MODO DE PAGO
#Número de pago
*Forma de pago
*Detalles de pago
Explicación de la relación entre DETALLE, FACTURA
Y PRODUCTO.
• Se aclara que en la entidad DETALLE se escogió la llave compuesta: número detalle y Id-
factura porque existe pocos tipos para Id-factura lo que permite ordenar la tabla de
datos más fácilmente. Si se hubiera escogido la llave compuesta: número detalle y Id-
producto, es probable que existan muchos códigos de Id-producto, tantos como
productos existan, lo que dificultaría el orden de la base de datos. Aunque ambas
opciones son posibles.
Hacemos una revisión y notamos que en la entidad PRODUCTO, el
atributo Categoría producto se repetirá varias veces por todos los
registros (es redundante).
• Aquí nos encontramos con la 1ra forma normal, que indica que si un
atributo se repite en una entidad, lo óptimo es convertirlos en otra
entidad.
• De esta manera establecemos la entidad CATEGORÍA y se le asigna su
llave foránea: Id-categoría.
MODELO FINAL DE FACTURACIÓN.
VENDEDOR
CATEGORIA
MODO DE PAGO
#Id-categoria
#Número de pago *Nombre
*Forma de pago *Descripción
*Detalles de pago
*Id-producto
Apreciaciones finales