Aam*_*mir 4 mysql sql parent-child foreign-key-relationship cascading-deletes
我有一个包含大约50个表的数据库.
假设我有一个名为parent的表,其中包含id主键和24个关于这个父表的近似子表.
我没有用过删除级联.我已经搜索了关于做连接可以在所有子表中执行删除.但加入20-30桌?太多了.
如果父项被删除,请告诉我有没有其他解决办法删除所有这些子行.
Sah*_*hah 15
您可以使用ON DELETE CASCADE.
ALTER TABLE childTable
ADD CONSTRAINT `FK_key` FOREIGN KEY (`childColumnName`)
REFERENCES parentTable(`parentColumnName`) ON UPDATE CASCADE ON DELETE CASCADE
Run Code Online (Sandbox Code Playgroud)
要么
AFTER DELETE TRIGGER在父表上创建.添加子表的DELETE查询.
DELIMITER $$
CREATE
TRIGGER `tn_aur_department_master` AFTER DELETE ON `tn_parentTable`
FOR EACH ROW BEGIN
DELETE FROM childTable WHERE parentId = old.parentId;
END;
$$
DELIMITER ;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10191 次 |
| 最近记录: |