我试图在mysql中设置触发器。实际上,我正在尝试将笔记表中最后插入的记录插入到log_trigger中,但是下面的代码不起作用。
DELIMITER $$
CREATE TRIGGER `after_note`
AFTER INSERT ON `notes`
FOR EACH ROW
BEGIN
INSERT INTO log_trigger (NoteId, customerContact, customer, users, note, NoteCreatedTs)
SELECT Id, customerContact, customer, users, note, CreatedBy FROM notes ORDER BY id DESC LIMIT 1
END$$
DELIMITER ;
请建议
而不是引用实际注释表中的物理行,而是引用New
伪行(它将与要触发的基础表的列定义匹配):
INSERT INTO log_trigger (NoteId, customerContact, customer, users, note, NoteCreatedTs)
SELECT New.PostId, New.customerContact, New.customer, New.users, New.note, New.CreatedBy;
New
将已经包含新插入的行-您无需再次查找。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句