Vous avez besoin d'une autre table avec des réservations
ID roomId checkInDate checkOutDate
1 1 4/6/2011 12:00PM 4/9/2011 11:00AM
2 2 4/2/2011 12:00PM 4/3/2011 11:00AM
3 1 4/9/2011 12:00PM 4/11/2011 11:00AM
Ensuite, lorsque vous ajoutez une nouvelle réservation pour chaque chambre, vous devez vous assurer que la requête suivante aboutit à un zero 0
, ou bien la salle est déjà réservée.
//Count Scheduling Conflicts
select count(roomid) from bookings where
bookings.checkOutDate > YouNewBookingCheckInDate and
bookings.checkInDate < YouNewBookingCheckOutDate
Donc, si votre nouvelle demande de réservation pour la chambre 1 est le 4/5/2011 1:00PM
, l'enregistrement #1 sera compté et la requête donnera un 1 (indiquant 1 conflit)