MySQL 外键错误:1215 故障排除
尝试在 MySQL 中添加外键约束时,您可能会遇到错误代码:1215,指示“无法添加外键约束(外键)。”此错误通常是由于数据类型不匹配或结构问题造成的。
数据类型不匹配
一个可能的原因是引用外键的列之间的数据类型不匹配和引用的列。例如,如果班级表中的 classLeader 列具有 VARCHAR(255) 数据类型,而学生表中引用的 StudentID 列是 INT,则外键约束将失败。两列的数据类型必须相同。
结构问题
如果数据类型匹配,问题可能在于表之间的结构差异。值得注意的是:
示例
-- Create student table CREATE TABLE student ( studentID int NOT NULL AUTO_INCREMENT, lastName varchar(255), firstName varchar(255), PRIMARY KEY (studentID) ); -- Create class table CREATE TABLE class ( classID int NOT NULL AUTO_INCREMENT, nameClass varchar(255), classLeader int, -- Change to INT to match studentID type FOREIGN KEY (classLeader) REFERENCES student(studentID), PRIMARY KEY (classID) );
外键与键
不考虑外键唯一标识表中行的传统键(例如主键或唯一键)。相反,它们的主要目的是确保引用完整性并维护表之间的关系。通过强制执行外键,您可以防止不一致和孤立数据。
以上是为什么我会收到 MySQL 外键错误 1215:'无法添加外键约束”?的详细内容。更多信息请关注PHP中文网其他相关文章!