Bases de Datos - ¿Cómo Relacionar 3 tablas. 2 con mismo ID?

 
Vista:
sin imagen de perfil

¿Cómo Relacionar 3 tablas. 2 con mismo ID?

Publicado por Pablo (2 intervenciones) el 15/12/2015 02:19:04
Saludos cordiales.


Tengo 3 tablas. Ver link: http://i65.tinypic.com/2m5dqf8.jpg

Detalle_factura
Producto
Servicio

Una factura esta compuesta por la venta de un producto o la realizacion de un servicio o ambos.
Necesito poder mostrar en Detalle_Factura el tanto el id de Producto como de Servicio que se haya realizado pero el problema es que los id son iguales y no se como diseñar la bd para poder saber si el 1 o el 2 o el numero que fuese corresponde a Productos o a Serivicos. ¿se entiende?

Cada Prodcuto y Servicio tiene su propio ID ejem:

++++Servicio++++++
id________Descripcion___
1...............Limpieza
2...............Reparacion Equipo
3...............Catering
+++++++++++++++++

++++Producto++++++
id___________Descripcion___
1......................silla
2......................mesa
3......................puerta
+++++++++++++++++

(pongo 3 para ejemplificar pero van a haber muchos mas)

Se me ocurre que debo armar una 3 tabla donde asigne un identificador para los Servicios y otro para los Productos de este modo:
++++Tipo_Serv_Prod++++++
id____________tipo________
1......................Servicio
2......................Prodcuto
++++++++++++++++++++++

Y por lo tanto en el detalle de factura agregaré otro campo llamado "Tipo" donde podre especificar si estoy hablando de un Servicio o de un Prodcuto.
++++Detalle_Factura++++++
id_________Tipo_________Cantidad
1.................1........................5
1.................2........................1
3.................1........................4
etc..
+++++++++++++++++++++

La pregunta: ¿Esto se hace asi? ¿O hice mal el diseño ?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 71
Bronce
Ha mantenido su posición en Bases de Datos (en relación al último mes)
Gráfica de Bases de Datos

¿Cómo Relacionar 3 tablas. 2 con mismo ID?

Publicado por Juan R. (52 intervenciones) el 15/12/2015 19:31:32
Buenas Pablo

Yo lo que haría en tu caso es en vez de usar para la clave primaria (id) números usar una combinación de un código (por ejemplo LIMP para limpieza y SERV para servicios) con los números, de manera que te quedaría algo así:

LIMP1, LIMP2, ...
SERV1, SERV2, ...

Así no se te repetirían los ids y no te haría falta ese campo "Tipo".

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

¿Cómo Relacionar 3 tablas. 2 con mismo ID?

Publicado por Pablo (2 intervenciones) el 15/12/2015 22:13:51
Esta buena la idea pero la cuestion es que
los productos son millones por eso los identifico con un numero
y los servicios son variados y muy personalizados dependiendo del trabajo de cada cliente. Yo puse esos ejemplos pero quiza no eran los mas adecuados porque no son servicios fijos. Los servicios representan los trabajos realizados a los clientes.
(Esto es la facturacion de una casa de computacion)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar