【发布时间】:2015-06-27 23:16:42
【问题描述】:
我正在尝试创建一个具有自身外键的表。我想建模一个可以是另一个类别的子类别的类别。这是我的 SQL:
CREATE TABLE IF NOT EXISTS `recipes`.`category` (
`id` INT NOT NULL COMMENT '',
`name` VARCHAR(60) NOT NULL COMMENT '',
`description` VARCHAR(255) NULL COMMENT 'Description of the recipe category.',
`parent_id` INT NULL COMMENT '',
PRIMARY KEY (`id`) COMMENT '',
CONSTRAINT `parent_id`
FOREIGN KEY (`id`)
REFERENCES `recipes`.`category` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION);
但是,MySQL 一直给我一个错误:
无法创建表“recipes.category”(错误号:150)
我正在尝试找出我做错了什么,有人可以给我提示吗?文档说:
无法创建表。如果错误消息是指错误 150,则表 创建失败,因为外键约束不正确 形成。
但是,这对我没有多大帮助。
【问题讨论】:
标签: mysql sql database foreign-keys