Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/06/2009, 13:32
Avatar de huesos52
huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 3 meses
Puntos: 360
Consulta entre horas

Saludos

Tengo una tabla eventos con la siguiente estructura:

idevento integer
fecha date
hinicio time
hfinal time
lugar varchar(30)

Necesito una consulta que antes de registrar un evento, me diga si hay eventos registrados para ese lugar y fecha entre las horas que el usuario ingrese.
Si la consulta presenta un registro, capturo la información y la pongo como mensaje de advertencia (Hay un evento en la fecha xx entre las xx y xx), si no encuentra ningún registro, procede a insertar en la base de datos el evento.

Pensé que la había logrado así:
Código mysql:
Ver original
  1. select lugar,actividad,fecha,hinicio,hfinal from eventos
  2.  where fecha = '2009-06-10' and lugar='Salon comunal'
  3. and (time_to_sec('02:00:00') between time_to_sec(hinicio)
  4. and time_to_sec(hfinal)) limit 1;

Donde 02:00:00 sería la hora de inicio del evento entrante, pero si pongo en el formulario una hora de inicio inferior a finicio y una hora superior a final, me deja registrar el evento.

Alguna idea para validar esto?

Desde el formulario, entrarían una hora inicial y una hora final del evento.

Mil Gracias
__________________
Without data, You are another person with an opinion.
W. Edwads Deming