ACTUALIZADO:
- Parece que no cambiaste
DELIMITER
. - Lo más probable es que haya querido decir
CURRENT_TIMESTAMP
en lugar de inexistenteCURTIMESTAMP()
Dicho esto, una versión sintácticamente correcta de su disparador podría verse como
DELIMITER $$
CREATE TRIGGER users_update_trigger
AFTER UPDATE ON users
FOR EACH ROW
BEGIN
INSERT INTO users_backlog (user_id, description, datetime) VALUES
(NEW.user_id, CONCAT('modified from ', OLD.hourly, ' to ', NEW.hourly), CURRENT_TIMESTAMP);
END$$
DELIMITER ;
o (debido a que tiene la única declaración en su disparador, puede omitir BEGIN ... END
bloque y DELIMITER
) simplemente
CREATE TRIGGER users_update_trigger
AFTER UPDATE ON users
FOR EACH ROW
INSERT INTO users_backlog (user_id, description, datetime) VALUES
(NEW.user_id, CONCAT('modified from ', OLD.hourly, ' to ', NEW.hourly), NOW());
Aquí está SQLFiddle demostración