首页 >数据库 >mysql教程 >MySQL 错误 150:为什么我无法创建此外键?

MySQL 错误 150:为什么我无法创建此外键?

Barbara Streisand
Barbara Streisand原创
2024-11-27 05:19:14844浏览

MySQL Error 150: Why Can't I Create This Foreign Key?

MySql 遇到错误 150:解密外键问题

当尝试创建一个外键引用另一个表的表时,开发人员可能会遇到错误 150,其神秘的消息让他们感到困惑。本文深入探讨了此错误的根本原因并提供了解决方案。

如 MySQL 文档中所述,当重新创建之前删除的表不遵守引用它的外键约束时,会出现错误 150。具体来说,表必须在引用的键上维护与最初创建时相同的列名、类型和索引。

要解决此问题,请确保包含外键的表(在本例中, “foo”)也被创建为 InnoDB 表。根据 MySQL 文档,外键关系中涉及的两个表都必须是 InnoDB 表,而不是临时表。

因此,要纠正错误,请尝试使用以下命令将“foo”表重新创建为 InnoDB 表查询:

CREATE TABLE foo (
  id INT PRIMARY KEY
) ENGINE = InnoDB;

一旦将“foo”表创建为 InnoDB 表,您应该能够使用外键引用成功创建“bar”表,而无需遇到错误 150。

以上是MySQL 错误 150:为什么我无法创建此外键?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn