У меня есть таблица БД, имя которой 'autoad', 2 столбца 'allads' и 'done', я хочу, чтобы перед обновлением выполнялся запрос chek, если значение (закончено)> значение (allads), затем выдается исключение, я использовал триггердля этого, но когда pat идет в phpmyadmin, выдайте ошибку: mysql сказал # 1303 - Невозможно создать триггер из другой сохраненной подпрограммы
CREATE TRIGGER before_insert_finished BEFORE INSERT ON autoad
FOR EACH ROW
BEGIN
SET @CountOfCar = (SELECT allads FROM autoad)
SET @CountOfCar2 = (SELECT finished FROM autoad
IF @CountOfCar2>@CountOfCar THEN
ON UPDATE NO ACTION
END
отредактировано:
в интерфейсе phpmyadmin просто хотитетело кода, между begin....end
, теперь я пытаюсь:
BEGIN
SET @CountOfCar = (SELECT allads FROM autoad)
SET @CountOfCar2 = (SELECT finished FROM autoad
IF @CountOfCar2>@CountOfCar THEN
ON UPDATE NO ACTION
END
ошибка: MySQL сказал: # 1064 - у вас ошибка в синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса, который нужно использовать рядом с 'SET @ CountOfCar2 = (ВЫБЕРИТЕ завершено ОТ автоадресации IF @ CountOfCar2> @CountOfCar' в строке 3