无法添加外键约束 MySQL
Cannot add a foreign key constraint MySQL
我有一个名为 "countries" 的 table 和另一个名为 "country_continents"[=40] 的 table =] 在我的数据库中。我想在 countries 中创建我的 continent_id
列,一个 foreign key 引用 id of country_continents,但我收到一条错误消息。这是创建外键的 SQL 和错误:
ALTER TABLE countries
ADD CONSTRAINT fk_continent_id
FOREIGN KEY (continent_id)
REFERENCES country_continents(id);
ERROR:
#1215 - cannot add foreign key constraint
起初,我得到的是:
"Error: relational features are disabled"
所以我 运行 命令 ALTER TABLE countries ENGINE=InnoDB;
和 ALTER TABLE country_continents ENGINE=InnoDB;
但现在我收到 #1215 错误。
这是 "country_continents" 的结构:
这是“国家”的结构:
对发生的事情有什么想法吗?提前致谢。
我认为错误是由于:
在您的国家 table,continent_id
不是unsigned。
编辑它并告诉我它是否有效
我有一个名为 "countries" 的 table 和另一个名为 "country_continents"[=40] 的 table =] 在我的数据库中。我想在 countries 中创建我的 continent_id
列,一个 foreign key 引用 id of country_continents,但我收到一条错误消息。这是创建外键的 SQL 和错误:
ALTER TABLE countries
ADD CONSTRAINT fk_continent_id
FOREIGN KEY (continent_id)
REFERENCES country_continents(id);
ERROR: #1215 - cannot add foreign key constraint
起初,我得到的是:
"Error: relational features are disabled"
所以我 运行 命令 ALTER TABLE countries ENGINE=InnoDB;
和 ALTER TABLE country_continents ENGINE=InnoDB;
但现在我收到 #1215 错误。
这是 "country_continents" 的结构:
这是“国家”的结构:
对发生的事情有什么想法吗?提前致谢。
我认为错误是由于:
在您的国家 table,continent_id
不是unsigned。
编辑它并告诉我它是否有效