我有两个不同的表格如下
apis
users
这里users
表格有api_id
作为外键。
现在正在执行以下查询,但这是一个棘手的错误
(声明api_id
列引用id
表上的apis
列。)
alter table `users` add constraint users_api_id_foreign foreign key (`api_id`) references `apis` (`id`) on delete cascade on update cascade
错误:#1005 - Can't create table 'xxxxx.#sql-54ef_229ff39' (errno: 150) (<a href="server_engines.php?engine=InnoDB&page=Status&token=50174b3c687a6edcb259e10dd65ca6d7">Details...</a>)
MySQL版本(开发服务器)
Server version: 5.5.42-37.1-log
在我的localhost中使用相同的查询
Server version: 5.5.44-0ubuntu0.14.04.1 - (Ubuntu)
如何修复此错误?提前谢谢。
Apis表
用户表
答案 0 :(得分:1)
有时,如果您的表中已有数据,则会导致此问题。
在您的情况下,如果users
表中有任何数据,则首先截断用户表,然后重试。