Вставьте, если есть свободные номера, использующие mySQL - PullRequest
0 голосов
/ 27 сентября 2011

Если в mysql таблице RESERVATIONS есть ROOM_NUMBER, DATE_ARRIVAL и DATE_DEPARTED

С этим я найду свободные сегодня номера

SELECT RPOM_NUMBER 
FROM RESERVATIONS 
WHERE (CURRENT_DATE() < DATE_ARRIVAL) OR (CURRENT_DATE() > DATE_DEPARTED) 

Как вставить запись в RESERVATIONS, еслисвободная комната на мою предпочтительную дату приезда и отъезда?

Ответы [ 3 ]

1 голос
/ 27 сентября 2011
   SELECT RPOM_NUMBER 
   FROM RESERVATIONS 
   WHERE (CURRENT_DATE() < DATE_ARRIVAL) OR (CURRENT_DATE() > DATE_DEPARTED) 

Если этот запрос возвращает более 0 строк, доступны свободные номера.

Тогда просто используйте оператор INSERT, как это

    INSERT INTO reservations SET room_number = ROOM_NUMBER_FROM_PREVIOUS_QUERY, [other fields of reservation table...]
0 голосов
/ 27 сентября 2011

SQL обычно выполняет только ту часть работы, которую вы хотите выполнить. Вы хотите написать программу, которая найдет свободные номера, а затем создаст бронирование для одного из этих номеров. SQL может выполнять поиск (с помощью SELECT) и создание (с помощью INSERT). Но та часть, в которой вы предлагаете пользователю список комнат, позволяет пользователю выбрать комнату и принимает решение о том, создавать ли резервирование, обычно происходит на каком-то процедурном языке, который выдает операторы SQL для воздействия на базу данных.

Какой другой язык вы используете в этом проекте?

0 голосов
/ 27 сентября 2011

То, что вы хотите - это условная вставка ... посмотрите на это: http://forums.mysql.com/read.php?97,164551,164551

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...