MySQL的外键同桌错误1005失败,错误号150
-
22-09-2019 - |
题
mysql> ALTER TABLE category ADD CONSTRAINT category_parent_category_id FOREIGN KEY (parent) REFERENCES category(id);
ERROR 1005 (HY000): Can't create table 'sfnews.#sql-244_1' (errno: 150)
DDL如下:
Create Table: CREATE TABLE `category` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`parent` bigint(20) unsigned DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`),
KEY `parent_idx` (`parent`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
为什么错了?
其他提示
如果您检查InnoDB引擎(SHOW ENGINE InnoDB STATUS
)的状态,你会得到一个更全面的解释:
国外最新KEY ERROR
[...]
找不到被引用表中的表中的索引,其中引用的列显示为所述第一列或列类型和引用表不匹配约束。
请id
无符号的。
不隶属于 StackOverflow