¿cambiar una estructura por sólo una excepción?
Publicado por david (2 intervenciones) el 13/01/2007 23:18:06
¿Qué me sugerís para solucionar lo siguiente?
Supongamos:
TABLA TRABAJOS: num_trabajo (clave), descripcion, trabajador, coste, ciudad
TABLA CIUDADES: ciudad (clave), pais, codigo_postal, jefe_ciudad
Se crea una relacion de uno a varios entre las tabla ciudades y trabajos, puesto que para cada ciudad los datos pais, cod_postal y jefe_ciudad son fijos. De esta forma ahorramos dichos campos en la tabla trabajos y la redundancia de datos.
El problema me surge cuando a modo de excepción un jefe_ciudad para un determinado trabajo no es el de siempre, es decir, para "Madrid" el jefe de equipo siempre es "Antonio", pero un día se me pide la excepción de que en un trabajo en concreto el jefe sea "Manuel". Se trataría de que en el 99% de los trabajos el jefe_ciudad es el fijo pero puede surgir un 1% en el que sea otro excepcionalmente.
Soluciones: 1ª Solución posible)Cambiar el jefe_ciudad en la tabla ciudades. No es válida puesto que ese cambio afectaría a todos los registros.
2ª solución posible) Pasar el campo jefe_ciudad a la tabla trabajos. Poco práctica puesto que por sólo unas pocas excepciones estaríamos repitiendo el mismo dato en la tabla trabajos y evitando el ahorro de esfuerzo.
3ª solución posible) cuando haya una excepción en lugar de poner "Madrid" poner "Madrid2" y dar de alta "Madrid2" en la tabla ciudades con el jefe_ciudad que ha variado.
Ninguna me convence y es eficiente al 100%. ¿Me podéis ayudar?
Muchas gracias
Supongamos:
TABLA TRABAJOS: num_trabajo (clave), descripcion, trabajador, coste, ciudad
TABLA CIUDADES: ciudad (clave), pais, codigo_postal, jefe_ciudad
Se crea una relacion de uno a varios entre las tabla ciudades y trabajos, puesto que para cada ciudad los datos pais, cod_postal y jefe_ciudad son fijos. De esta forma ahorramos dichos campos en la tabla trabajos y la redundancia de datos.
El problema me surge cuando a modo de excepción un jefe_ciudad para un determinado trabajo no es el de siempre, es decir, para "Madrid" el jefe de equipo siempre es "Antonio", pero un día se me pide la excepción de que en un trabajo en concreto el jefe sea "Manuel". Se trataría de que en el 99% de los trabajos el jefe_ciudad es el fijo pero puede surgir un 1% en el que sea otro excepcionalmente.
Soluciones: 1ª Solución posible)Cambiar el jefe_ciudad en la tabla ciudades. No es válida puesto que ese cambio afectaría a todos los registros.
2ª solución posible) Pasar el campo jefe_ciudad a la tabla trabajos. Poco práctica puesto que por sólo unas pocas excepciones estaríamos repitiendo el mismo dato en la tabla trabajos y evitando el ahorro de esfuerzo.
3ª solución posible) cuando haya una excepción en lugar de poner "Madrid" poner "Madrid2" y dar de alta "Madrid2" en la tabla ciudades con el jefe_ciudad que ha variado.
Ninguna me convence y es eficiente al 100%. ¿Me podéis ayudar?
Muchas gracias
Valora esta pregunta


0