gpt4 book ai didi

mysql - 插入触发器操作时创建触发器语法错误

转载 作者:行者123 更新时间:2023-11-29 10:27:43 25 4
gpt4 key购买 nike

我正在尝试创建一个触发器,以便如果特定表列中有任何更改,则应在另一个表列中创建事件。我为此使用以下 sql 查询

CREATE TRIGGER enabled_update BEFORE UPDATE ON useraccount 
FOR EACH ROW
BEGIN
IF (NEW.enabledAccount != OLD.enabledAccount) THEN
INSERT INTO logEvents
SET NEW.event = OLD.employeeID;
END IF;
END;

但是当我尝试运行此查询时出现以下错误。查询中的错误 (1064):第 6 行“”附近的语法错误查询中的错误 (1064):第 1 行“END IF”附近的语法错误。我哪里错了?

最佳答案

使用DELIMITER命令,参见23.1 Defining Stored Programs .

DROP TRIGGER IF EXISTS `enabled_update`;

DELIMITER //

CREATE TRIGGER `enabled_update`
BEFORE UPDATE ON `useraccount`
FOR EACH ROW
BEGIN
IF (NEW.`enabledAccount` != OLD.`enabledAccount`) THEN
INSERT INTO `logEvents`
SET `event` = OLD.`employeeID`;
END IF;
END//

DELIMITER ;

关于mysql - 插入触发器操作时创建触发器语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47977850/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com