Это мой триггер.Ошибка # 1054 в MySQL Trigger
DELIMITER //
CREATE TRIGGER verificare_masa
BEFORE INSERT ON Rezervare
FOR EACH ROW
BEGIN
IF (NEW.Data_Rezervarii=Data_Rezervarii) AND (NEW.NumarMasa=NumarMasa) THEN
SET NEW.NumarMasa= NULL;
END IF;
END //
DELIMITER ;
Я хочу сделать триггер на 1 столе (rezervare).
Когда я запускаю триггер, он был создан. Но, когда я вставить данные в таблицу rezervare, он стал Код ошибки: 1054. Неизвестный столбец «Data_Rezervarii» в «списке поля»
Я хочу, чтобы проверить, если заказ уже в базе данных для этой даты и требуемая масса уже зарезервирована для этой даты
Я использовал ваш код Код ошибки: 1193. Неизвестная системная переменная 'NumarMasa' –
Вставьте вывод 'SHOW CREATE TABLE Rezervare \ G',' SHOW CREATE TRIGGER verificare_masa \ G' и 'SHOW VARIABLES LIKE '% version% «'. Вероятно, вы пропустили 'NEW' после' SET' - вы получили бы эту точную ошибку, если бы пытались сделать 'SET NumarMasa = ...' – elenst
Я решил проблему, поэтому: DELIMITER // CREATE TRIGGER verificare_masa ПЕРЕД ВСТАВИТЬ на бронирование для каждой строки НАЧАТЬ IF (SELECT COUNT (*), откуда резервации NEW.Data_Rezervarii = Data_Rezervarii И NEW.NumarMasa = NumarMasa) = 1 ТОГДА SET NEW.NumarMasa = NULL; END IF; END // DELIMITER; –