错误1005,任何人都可以告诉我我错了什么?

时间:2014-11-19 08:28:47

标签: mysql

我想分配外键(电子邮件)引用用户(电子邮件),但它显示错误。我无法弄清楚出了什么问题。

ERROR 1005: Can't create table 'schema.#sql-1bf8_f' (errno: 121)
SQL Statement:
ALTER TABLE `schema`.`vendor_ambassador` 
ADD CONSTRAINT `email`
  FOREIGN KEY (`email`)
  REFERENCES `schema`.`user` (`email`)
  ON DELETE NO ACTION
  ON UPDATE NO ACTION

1 个答案:

答案 0 :(得分:0)

我有同样的问题。这些是我解决此问题的步骤:

  1. 检查是否先创建主表。
  2. 检查主表上的主键是否已实现并创建了索引。
  3. 检查主表和明细表上相关列中的数据类型是否相同。
  4. 确保详细信息表中的外键列未设置为主键。
  5. 检查数据库中其他表的外键或约束名称。外键或约束名称应该是唯一的。
  6. 如果这没有帮助,请使用MySQL命令检查:显示innodb引擎状态;阅读问题。
  7. 我希望这能解决你的问题。