Перестает работать запрос после добавление нового столбца

Рейтинг: -1Ответов: 1Опубликовано: 29.04.2015

Всем добрый день!

Есть таблицы events(события),flats(квартиры)

Есть запрос вида

SELECT DISTINCT(flats.id), flats.street, flats.house, flats.apartment 
FROM flats 
RIGHT JOIN events 
ON flats.id = events.flats_id 
WHERE D1 <= events.reservation_time_start 
OR D2 >= events.reservation_time_end;

Данный запрос смотрит есть ли такое событие на квартиру(пересекающиеся интервалы)

Запрос замечательно работает до тех пор , пока в таблицу events не вносятся новые поля. Допустим внесли новое поле price - запрос перестал работать Копирую структуру таблицы events, удаляю таблицу events, создаю новую таблицу events с уже новым полем price,запрос снова работает. Может надо какие то обновления делать после добавление полей в таблицы?

Может я неправильно создаю таблицу

CREATE TABLE `gorod`.`events` (
 `id` INT NOT NULL AUTO_INCREMENT,
 `flats_id` INT NULL,
 `clients_id` INT NULL,
 `real_time_start` TIMESTAMP NULL,
 `real_time_end` TIMESTAMP NULL,
 `reservation_time_start` TIMESTAMP NULL,
 `reservation_time_end` TIMESTAMP NULL,
 `client_comment` VARCHAR(45) NULL,
 `excursion` TINYINT(1) NULL,
 `interpreter` TINYINT(1) NULL,
 `personal_driver` TINYINT(1) NULL,
 `food` TINYINT(1) NULL,
 `transfer` TINYINT(1) NULL,
 `rent_car` TINYINT(1) NULL,
 `rent_laptop` TINYINT(1) NULL,
 PRIMARY KEY (`id`))
DEFAULT CHARACTER SET = utf8
COLLATE = utf8_general_ci;

Добавляю новые колонки так

ALTER table events Add column balance_due int;

Ответы

▲ 1

Возможно, у вас есть таблицы с одинаковым именем в разных схемах: gorod.events

Попробуйте так:

ALTER table `gorod`.`events` Add column balance_due int;