级联删除数据库中的记录



我有父子关系表:

id   text        parent_id
1   'test'       0
2   'test1'      1
3   'test2'      2
4   'test3'      0

我有一个像这样构建树的函数:

test
  - test1
    -- test2
test3

例如,我想删除test1,但我需要删除他的所有孩子,我该怎么做,或者我需要使用什么技术?

我尝试在同一表上添加外键,但它不起作用

像这样添加约束

ALTER TABLE 
    `table` 
ADD FOREIGN KEY 
    (`parent_id`) 
REFERENCES 
    `table` (`id`) 
ON UPDATE CASCADE 
ON DELETE CASCADE;

重要提示:您的表必须是 InnoDB

最新更新