Mysql 另一个";错误代码:1215。无法添加外键约束";

Mysql 另一个";错误代码:1215。无法添加外键约束";,mysql,Mysql,我有一张桌子 CREATE TABLE users( id BIGINT UNSIGNED AUTO_INCREMENT, ... PRIMARY KEY (id)); 现在,我想添加另一个表 CREATE TABLE foo ( id BIGINT UNSIGNED AUTO_INCREMENT, user_id bigint unsigned, ... PRIMARY KEY (id), FOREIGN KEY (user_id) REFERENCES mydb

我有一张桌子

CREATE TABLE users(
  id BIGINT UNSIGNED AUTO_INCREMENT,
  ...
PRIMARY KEY (id));
现在,我想添加另一个表

CREATE TABLE foo (
  id BIGINT UNSIGNED AUTO_INCREMENT,
  user_id bigint unsigned,
  ...
  PRIMARY KEY (id),
  FOREIGN KEY (user_id) REFERENCES mydb.users(id) ON DELETE CASCADE ON UPDATE CASCADE
);
由于以下原因,我无法创建上表:

Error Code: 1215. Cannot add foreign key constraint

我看不出有什么不对劲。我遗漏了什么?

检查您正在使用的数据库引擎。您应该使用InnoDB,而不是MyISAM


MyISAM不支持外键。

为什么要添加数据库前缀?这应该是同一数据库中的两个表。检查它们是否都是InnoDB,而不是MyISAM。