3

我有一张这样的桌子:

 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

我想,当父母删除它的所有孩子时,删除。如果有任何由外键定义的关系,那么它会自动这样做是好的。

4

2 回答 2

4

在此列上添加外键parent约束ON DELETE CASCADE

CONSTRAINT `FK_ParentCategory` FOREIGN KEY (`parent`)
REFERENCES jngi_category(id) ON DELETE CASCADE ON UPDATE CASCADE

SQL 小提琴演示

于 2013-03-26T08:23:38.573 回答
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 ;
于 2013-03-26T08:57:35.020 回答