我有两个包含以下列名的表。
用户
ui |电子邮件|通
user_profiles
_email |数量| LVL
我尝试确保每次将新用户添加到用户表时 user_profiles 表为新用户创建新行。然而它失败了。在阅读了许多示例触发器语句后,我似乎无法找到错误。
CREATE TRIGGER updatUserProfilesTBL AFTER INSERT ON users
BEGIN
INSERT INTO user_profiles (_email)
VALUES (new.email)
END;
答案 0 :(得分:1)
您似乎错过了FOR EACH ROW
。此外,如果通过MySQL命令行执行此操作,则需要更改DELIMITER
,并在插入语句后添加;
。
DELIMITER $$
CREATE TRIGGER updatUserProfilesTBL AFTER INSERT ON users
FOR EACH ROW BEGIN
INSERT INTO user_profiles (_email)
VALUES (new.email);
END$$
DELIMITER ;
根据to the CREATE TRIGGER
spec,它不是可选的。