Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Diseño de bases de datos

Estas en el tema de Diseño de bases de datos en el foro de Bases de Datos General en Foros del Web. Seguro será fácil para los entendidos en la materia, pero no he logrado definir cuál variante es la correcta. La problemática es: Tengo que controlar ...
  #1 (permalink)  
Antiguo 07/10/2010, 10:19
 
Fecha de Ingreso: octubre-2010
Mensajes: 1
Antigüedad: 13 años, 6 meses
Puntos: 0
Diseño de bases de datos

Seguro será fácil para los entendidos en la materia, pero no he logrado definir cuál variante es la correcta.
La problemática es: Tengo que controlar el TIEMPO en Horas de las interrupciones diarias del servicio de un camión de carga, pero no se conocen todas las causas de antemano, tenemos las siguientes: (Mantenimiento, Rotura, Almuerzo, Merienda, cambio de turno, Falta de mercancía, el resto conocerá diariamente)
Tengo una tabla llamada “Camión”, y otra llamada “Camion_Interrupcion”, mi duda es si controlar las interrupciones como un listado de ellas (Variante 1) o como columnas en una tabla (Variante 2).
Es decir:
__________________________________________________ ___
Variante 1
Camión
IdCamion
Siglas
…Demás datos

Camion_Interrupcion
IdCamion_Interrupcion
IdCamion
IdInterrupcionDetalle

Interrupcion_Detalle
IdInterrupcion_Detalle
Nombre_Interrupcion
__________________________________________________ ____
Variante 2
Camión
IdCamion
Siglas
…Demás datos

Camion_Interrupcion
IdCamion_Interrupcion
IdCamion
Rotura
Almuerzo
Merienda
cambio de turno
Falta de mercancía
Fecha
__________________________________________________ __________

Además tengo dificulta para luego de seleccionar una de las dos variantes hacer las consultas, debido a que los reportes requieren cálculos entre columnas, por ejemplo el tiempo de almuerzo se cobra y el tiempo de mantenimiento no, y que se deben mostrar en los reportes las interrupciones como encabezados de columnas.

De escoger la variante 1, puedo añadir nuevas interrupciones pero tengo que transformar en columnas las filas, y se me hace difícil (no se) totalizar por filas y columnas o diseñar los reportes.

Con la variante 2 cuando tenga que incrementar una interrupción tengo que añadir una columna en la tabla “Camion_Interrupcion”, y modificar el diseño de las consultas he informes.

Realmente no sé qué hacer, si alguien me ayudara.

Última edición por osalomon2011; 07/10/2010 a las 11:19
  #2 (permalink)  
Antiguo 28/01/2013, 06:16
 
Fecha de Ingreso: abril-2004
Mensajes: 28
Antigüedad: 20 años
Puntos: 0
Respuesta: Diseño de bases de datos

Hace mucho tiempo que no toco BD, pero si yo tuviera que hacerlo haría algo así como la variante 1, ya que entre el camion y el tipo de interrupcion que haya se genera una relación N:N :

Tabla Camion
id_Camion (PK) -> en este caso sería la matricula supongo
+ datos

TABLA Tipo_Interrupcion
id_Tipo (PK)
+ datos
cobro (boolean) -> lo defines directamente en el tipo de interrupcion, si se cobra o no

TABLA Interrupcion
id_Camion(PK)
id_Tipo(PK)
hora_inicio
hora_fin

Etiquetas: bases, diseño
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 09:25.