向现有表添加外键
向现有表添加外键可能是一项简单的任务,但有时会遇到错误由于不正确的语法或表配置问题。
在此特定场景中,用户在尝试向引用“Sprache”表的“katalog”表添加外键约束时遇到错误。该错误消息表明无法解析外键定义中的“Sprache”表。
要解决此问题,请确保数据库中存在“katalog”和“Sprache”表并且定义正确。验证外键约束中引用的列名是否存在于两个表中、具有匹配的数据类型并且不为 NULL。另外,检查表引擎;为了使外键约束正常工作,两个表都必须使用 InnoDB 存储引擎。
如果表配置正确,问题可能出在 ALTER TABLE 语句的语法上。在 MySQL 5.1.61 中添加外键的正确语法是:
ALTER TABLE katalog ADD FOREIGN KEY (Sprache) REFERENCES Sprache (ID) ON DELETE SET NULL ON UPDATE SET NULL;
确保列名、表名和操作子句拼写正确。此外,请检查您在 FOREIGN KEY 子句中引用的表是否存在于数据库中,并且已定义主键。
通过验证表配置并确保语法正确,您应该能够成功添加外键“目录”表的关键约束。
以上是为什么我无法将外键添加到引用'Sprache”的'目录”表中?的详细内容。更多信息请关注PHP中文网其他相关文章!