Ver Mensaje Individual
  #3 (permalink)  
Antiguo 18/08/2014, 08:42
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Base de datos de sistemas de reserva de pasajes de colectivos

Cita:
Debo crear una tabla en la base de datos que tenga cargada las 51 butacas
para saber si estan ocupadas o no
No necesariamente...
No existe una única forma de diseñar una base adecuada para el uso que describes (me parece un ejercicio práctico, porque en el mudo real no conozco servicios de transporte con tres categorías semejantes en una misma unidad).
Como sea, una posibilidad es la que describes, pero requeriría cargar siempre los 51 campos (inadecuado) o crear los 51 registros si o si, y eso no parece óptimo.
Partamos de un par de ideas:
¿Qué define que un asiento de un trasporte de pasajeros esté ocupado?
Bueno, hay dos cosas que pueden definirlo: 1) Se vendió un pasaje para ese servicio, en ese día y a esa hora y para un determinado asiento; y 2) La composición de los asientos está diagramada en un esquema que se parametriza, y se usa para administrar eso. Este segundo caso hace que el sistema sea rígido y poco adecuado para cambios de contexto.

Un diseño relativamente normalizado sería por ejemplo:
- Unidad (es el colectivo, ómnibus, bus, "micro" o como quieras llamarlo).
- Asientos_unidad (un registro por cada butaca, con indicación de su identificación y categoría).
- Categorías_servicios (denominación o descripcion de los servicios para una categoría dada).
- Servicios (cada servicio con origen, destino, fecha y hora, y unidad que prestará el servicio)
- Pasajes_servicios (pasaje indicando servicio, numero de pasaje, estado, comprobante de pago, y otros datos propios de un pasaje).
En un contexto así, del cruzamiento de las tablas referidas a unidad u asientos, junto con la tabla pasajes, se puede obtener sin problemas los asientos libres, los reservados y los efectivamente vendidos.

En un contexto real, este modelo de todos modo es insuficiente, pero para dar un diseño adecuado se debe hacer un relevamiento de la empresa y sus necesidades, así como del sistema actual de gestión, a fin de detectar y definir correctamente las reglas del negocio, sin las cuales un diseño de datos es una mera suposición.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)