我需要在插入另一个表后更新现有表。这就是我所拥有的。
DELIMITER $$
CREATE TRIGGER `some_trigger`
AFTER INSERT ON `old_table`
FOR EACH ROW BEGIN
UPDATE `new_table` set `some_column` = new.`column`
WHERE `new_table`.id = new.id
END $$
DELIMITER;
触发器定义成功执行并且触发器存在于 SQL_MODE - NO_ENGINE_SUBSTITUTION 定义器 - root@%
这有什么严重的错误吗?
最佳答案
您能否确认 new.id(即在 old_table 插入时生成的 id)也存在于新表中? 因为可能的原因可能是新表 new.id 在插入 old_table 时不存在。
关于MySQL 触发器不工作。可能是什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31268660/