这个问题在这里已经有答案了:
mysql创建带有外键的表,给出errno:150(20个答案)
两年前关门了。
我的数据库:
DROP TABLE IF EXISTS `login_tokens`;
CREATE TABLE `login_tokens` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`token` char(64) NOT NULL DEFAULT '',
`user_id` int(11) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `token` (`token`),
KEY `user_id` (`user_id`),
CONSTRAINT `login_tokens_ibfk_1`
FOREIGN KEY (`user_id`) REFERENCES `users` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
# Dump of table users
# ------------------------------------------------------------
DROP TABLE IF EXISTS `users`;
CREATE TABLE `users` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`username` varchar(32) DEFAULT NULL,
`password` varchar(60) DEFAULT NULL,
`email` text,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
错误:
mysql说:文档
1条答案
按热度按时间3zwtqj6y1#
您需要创建表
users
在创建表之前login_tokens
.在您创建
login_tokens
,users
还不存在,所以无法创建“外键”关系。