Мне нужно обновить oc_product_attribute со значением, полученным из вставленной строки в транспортных средствах. Как я могу получить это конкретное значение? (XxxCOLUMN_VALUExxx)MYSQL Trigger для обновления другой таблицы на основе вставленного значения
CREATE TRIGGER vehicle_attributes AFTER INSERT ON vehicles
FOR EACH ROW
BEGIN
UPDATE oc_product_attribute SET oc_product_attribute.vehicle_name =
(SELECT CONCAT(vehicles.make_name, ' ', vehicles.model_name, ' ',
vehicles.chassis) FROM vehicles WHERE vehicles.id = xxxCOLUMN_VALUExxx)
WHERE oc_product_attribute.id = xxxCOLUMN_VALUExxx
END
Даже упрощена ниже: Я все еще получаю сообщение об ошибке в MYSQL:
CREATE TRIGGER vehicle_attributes AFTER INSERT ON vehicles
FOR EACH ROW
BEGIN
UPDATE oc_product_attribute
SET oc_product_attribute.vehicle_name =
CONCAT(NEW.make_name,' ',NEW.model_name,' ',NEW.chassis);
END;
У Вас есть ошибка в вашем SQL синтаксиса; проверьте руководство, которое соответствует версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с «» в строке 7
и упрощенной дальнейшей:
CREATE TRIGGER vehicle_attributes AFTER INSERT ON vehicles
FOR EACH ROW
BEGIN
UPDATE oc_product_attribute
SET oc_product_attribute.vehicle_name = 'test' WHERE 1
END;
Я все еще получаю ту же ошибку - это может быть MYSQL Безразлично» t активированы триггеры?
, пожалуйста, предоставьте обе стороны двух задействованных табличных транспортных средств и oc_product_attribute – luksch