0

在数据库中我只有一个表: 导航(InnoDB) 在此处输入图像描述

是否可以将此表配置为:如果我删除其中 id == 1,所有 id 1(根项)子将被自动删除?

更新

我尝试重新创建表:

CREATE TABLE `navigation` (
`id` int(10) unsigned NOT NULL auto_increment,
`name` VARCHAR(32),
`url` VARCHAR(32),
`position` int(10),
`parent_id` int(10) unsigned NOT NULL,
PRIMARY KEY (`id`),
KEY `type` (`parent_id`)
CONSTRAINT `??????` FOREIGN KEY (`parent_id`)
  REFERENCES `types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
)

但是第 9 行需要什么值?

4

1 回答 1

0

这 ??????应该是您在表之间创建的外键 (your_key_name)。导航中的“parent_id”链接到类型中的“id”。当导航表完成更新或删除时,删除/更新将级联到类型表。

CONSTRAINT `navigate2types` FOREIGN KEY (`parent_id`)
  REFERENCES `types` (`id`) ON DELETE CASCADE ON UPDATE CASCADE

请记住,您需要使用 InnoDB 存储引擎。

于 2013-10-15T15:22:18.430 回答