(编辑:对时髦的格式表示歉意。SO 没有格式化我的代码。)
我觉得自己很蠢,但我为此绞尽脑汁的时间比我承认的还要长。
我需要一个触发器,当对 menu_button 进行任何更新时,它会将 soa_config
中的字段更新为更新的日期时间(parameterValue
是一个 Varchar
)。我尝试过像设置 parameterValue='1'
一样简单,也没有骰子。单独运行更新和触发器,无需任何操作,并且两者都有效。正是这两者的结合才使得事情变得困难。我收到错误
“您的 SQL 语法有错误;请检查与您的 MySQL 服务器版本相对应的手册,以了解在第 1 行‘END’附近使用的正确语法”。
delimiter |
CREATE TRIGGER imatrigger AFTER UPDATE on `menu_button`
FOR EACH ROW
BEGIN
UPDATE soa_config
SET parameter_value = 'CURRENT_TIMESTAMP'
WHERE parameter_name = last_menu_update_itme
END
|
delimiter ;
我看过: Quick MySQL Trigger Update
Trouble in creating Trigger in MySQL
sql creating a trigger on update
以及更多谷歌搜索。
最佳答案
在 WHERE
子句之后和 END
语句之前需要一个语句分隔符
即这里应该有一个分号:WHEREparameter_name=last_menu_update_itme;
<----
关于php - 创建简单的 MySQL 更新触发器时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26495898/