我正在尝试创建触发器,因此当“order”表中的“FirstName”行update
时,新值将保存在表触发器中。名字。
我已经以这种方式构建了MySQL查询,但是我得到“你的SQL语法中有错误;”我想我做错了什么:
DELIMITER $$
CREATE TRIGGER when_updated
BEFORE UPDATE
ON order
FOR EACH ROW
BEGIN
INSERT INTO triggers (timestamp, FirstName) VALUES (now(), NEW.FirstName)
END$$
DELIMITER;
答案 0 :(得分:2)
您尚未终止INSERT
声明,
DELIMITER $$
CREATE TRIGGER when_updated
BEFORE UPDATE ON `order` FOR EACH ROW
BEGIN
INSERT INTO triggers (timestamp, FirstName)
VALUES (now(), NEW.FirstName);
-- ^ HERE
END$$
DELIMITER;
此外,ORDER
是一个保留的关键字。用反引号分隔它,以便它可以用作表名。