mysql中删除父行时如何更新外键值?
我想在删除父行时更新外键值 phpmyadmin中有一个“SET NULL”选项,但是我不想将值设置为NULL,而是想将其设置为我想要的值mysql中删除父行时如何更新外键值?,mysql,foreign-keys,Mysql,Foreign Keys,我想在删除父行时更新外键值 phpmyadmin中有一个“SET NULL”选项,但是我不想将值设置为NULL,而是想将其设置为我想要的值 我如何才能做到这一点?没有像set null选项那样的自动魔法内置方法,但您可以始终使用特定的业务逻辑编写触发器: DELIMITER // CREATE TRIGGER parent_delete_tr BEFORE DELETE ON parent FOR EACH ROW BEGIN UPDATE children
我如何才能做到这一点?没有像
set null
选项那样的自动魔法内置方法,但您可以始终使用特定的业务逻辑编写触发器:
DELIMITER //
CREATE TRIGGER parent_delete_tr
BEFORE DELETE
ON parent FOR EACH ROW
BEGIN
UPDATE children
SET parent_id = 123 -- Or some other logic
WHERE parent_id = OLD.id;
END; //
DELIMITER ;
你可以用一个触发器。您可以包括您的表模式吗?