Ver Mensaje Individual
  #5 (permalink)  
Antiguo 14/04/2015, 03:27
Avatar de giuli956
giuli956
 
Fecha de Ingreso: noviembre-2012
Mensajes: 149
Antigüedad: 11 años, 6 meses
Puntos: 1
Respuesta: Como organizar tabla con mas de 1 relacion.

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Puedes persistir con ese modelado, pero solo lograrás complicarte hasta el infinito.
Es tu decisión.
Es que eso quiero saber como modelarlo.

Decime acerca de este modelo:
Tambien podria plantear que los proveedores forman parte del sistema de compras y podria registrar una compra con el proveedor, etc, y luego una tabla de relacion de esa compra con los cheques que se asociaron, es lo mismo que se hace con los productos : la tabla compra tiene idproveedor fecha,etc y en otra de relacion todos los productos de esa compra(para no repetir todo el registro de compra)
Código MySQL:
Ver original
  1. CREATE TABLE cheque(
  2. idcliente INT,
  3. numero INT,
  4. fecharecibo DATE,
  5. fechacobro DATE,
  6. importe DECIMAL(10,2),
  7. titular VARCHAR(100),
  8. cuenta  INT,
  9. CUIT INT,
  10. haber DECIMAL(10,2),
  11. cobrado bool,
  12. fechadecobro DATE,
  13. tipo CHAR,
  14. idpersona INT,
  15. );
  16.  
  17. create table factura(
  18. monto decimal(10,2),
  19. idproveedor int,
  20. tipo char,
  21. foreign key (idproveedor) references proveedor(idproveedor) on delete no action
  22. );
  23. create table compras(
  24. idfactura int,
  25. cantidad decimal(10,2),
  26. idproducto int,
  27. preciou decimal(10,2),
  28. foreign key (idproducto) references producto(idproducto) on delete no action,
  29. foreign key (idfactura) references factura(idfactura) on delete cascade
  30. );

Una vez teniendo la factura se registra por cada producto de la compra o factura cantidad idproducto preciou.

Entonces los cheque asociados que pueden ser varios:
Código MySQL:
Ver original
  1. CREATE TABLE chequecompra(
  2. idfactura INT,
  3. idcheque INT,
  4. FOREIGN KEY (idfactura) REFERENCES factura(idfactura),
  5. FOREIGN KEY (idcheque) REFERENCES cheque(idcheque)
  6. );
lo mismo haria para las ventas a los clientes, de la tabla ventas asociar idcheque.

Saludos