Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/06/2012, 15:10
elnoidelcargol
 
Fecha de Ingreso: noviembre-2007
Mensajes: 16
Antigüedad: 16 años, 5 meses
Puntos: 0
problema con diseño de bbdd de servicio tecnico

hos explico el caso un poco , pero como vereis el problema esta en el diseño de las tablas de reparacion de un servicio tecnico

gracias

TABLAS

cliente: es el cliente del servicio tecnico.
equipo: es el equipo que nos han dejado.
Operación: es lo que le hacemos al pc (formatear, cambio de componente, antivirus, etc ...)
componente: es el componente que cambiaremos o venderemos (tarjeta grafica, procesador, etc)
reparacion: es el conjunto de operaciones que le haremos al pc. y componentes que debemos sustituir en caso de que sea conveniente

CAMPOS

cliente: id_client, nombre, etc ..
equipo: id_equip, marca, etc ...
operación: id_operacio, nombre, descripcion, precio, horas
componente: id_component, nom_component, precio
reparacion: id_reparacio, id_client, id_equip, dataentrada, etc ..


entonces aquí viene el problema, tengo que hacer una o unas tablas que nos permitan guardar reparaciones, cada reparacion se compone de varias operaciones y varios componentes.

1era pregunta: no se si el componente meterlo dentro de la operación según convenga es decir, si se cambia la tarjeta grafica metemos el id del nuevo componente. ->
************** ex => reparacion: id: 1, cliente: oriol, equipo: acero, operacion: cambio t.grafica, componente: nvidia | |

2 ª pregunta: una reparacion tiene diferentes componentes y diferentes operaciones ya la vez una operación puede tener diferentes componentes y un componente puede estar en diferentes reparaciones (ya que el mismo modelo de procesador, por ejemplo, lo podemos montar en diferentes equipos). es decir veo esta relación:

reparacion N <-> N operacion N <-> N componente N <-> reparacion

es decir creo que sería una ternaria

3era pregunta.

para ordenarlo un poco lo que quiero hacer es,

una reparacion requiere una operación o más
un componente requiere una operación

una reparacion no tiene pq tener un componente
una operación no tiene pq tener un componente

ej: tenemos que formatear un ordenador -> la reparacion requiere la operación de formatear, pero no ningún componente
EX2: tenemos que cambiar una tarjeta grafica -> la reparacion requiere una operación, la operación requiere un componente.

no se como solucionarlo XD jejeje
tengo que hacer la base de datos que hemos permita todo esto

GRACIAS