MySQL 外键约束错误:类型不匹配
在MySQL中,尝试在表table1和table2之间建立外键约束时,可能会出现“外键约束格式不正确”的错误。此约束旨在将table2中的列IDFromTable1链接到table1中的列ID,以确保引用完整性。
尽管两个表都使用InnoDB存储引擎,并且列的数据类型均为char类型,但错误仍然存在。问题的根源在于列属性的差异。
具体来说,外键列IDFromTable1和被引用列ID的数据类型或长度不同。为了解决这个问题,必须确保参与外键关系的对应列具有完全相同的数据类型和长度。
在本例中,外键列定义为SMALLINT(5) UNSIGNED,而被引用列为INT(10) UNSIGNED。通过将列属性对齐来解决此类型不匹配问题,从而成功建立外键约束。
以上是为什么 MySQL 会抛出'外键约束格式不正确”错误,如何修复它?的详细内容。更多信息请关注PHP中文网其他相关文章!