我有一张这样的表:
CREATE TABLE `jngi_category` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`Name` varchar(50) NOT NULL,
`parent` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8
我希望,当父母删除它的所有子删除时。 如果存在任何由外键定义的关系,那么它会自动执行此操作。
答案 0 :(得分:4)
使用parent
ON DELETE CASCADE
上添加外键约束
CONSTRAINT `FK_ParentCategory` FOREIGN KEY (`parent`)
REFERENCES jngi_category(id) ON DELETE CASCADE ON UPDATE CASCADE
答案 1 :(得分:2)
试试这个sql
CREATE TABLE jngi_category (
id int(11) NOT NULL auto_increment,
Name varchar(50) NOT NULL,
parent int(11),
PRIMARY KEY (id),
foreign key (parent) references jngi_category(id) on delete cascade
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 ;