首页 >数据库 >mysql教程 >为什么在创建引用主键的外键时会收到 MySQL 外键错误 1005?

为什么在创建引用主键的外键时会收到 MySQL 外键错误 1005?

Barbara Streisand
Barbara Streisand原创
2024-12-26 12:31:10221浏览

Why am I getting MySQL Foreign Key Error 1005 when creating a foreign key referencing a primary key?

MySQL 外键错误 1005:主键作为外键

通常不建议创建引用主键的外键,因为它可能会导致性能问题和数据完整性问题。

主键作为外键键

虽然可以创建同时也是外键的主键,但这不是常见的做法。这样做会限制外键表的灵活性,因为它无法被其他表引用。

错误 1005

您遇到的错误, “Error 1005: Can't create table 'dbimmobili.condoni' (errno: 150)”表示 MySQL 无法创建外部表键正确。

缺少索引

如错误消息中所述,MySQL 需要在引用表和被引用表上都有可用索引以进行外键约束。在您的情况下,您似乎尚未在引用表的主键上创建索引。

解决方案

要解决此问题,请确保引用表, dbimmobili.Immobile 在主键列上创建了索引:ComuneImmobile、ViaImmobile、CivicoImmobile 和内部不可移动。创建索引后,您应该能够成功导出更改。

以上是为什么在创建引用主键的外键时会收到 MySQL 外键错误 1005?的详细内容。更多信息请关注PHP中文网其他相关文章!

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