无法在 MySQL Workbench 中创建外键

Posted

技术标签:

【中文标题】无法在 MySQL Workbench 中创建外键【英文标题】:Cannot create foreign key in MySQL Workbech 【发布时间】:2020-08-14 21:25:32 【问题描述】:

我正在尝试建立多对多关系。以下是表格:

这是关系表:

我可以毫无问题地为 AgeRangeId 创建外键。但是对于 UserNeedId,id 没有显示任何可供选择的参考列,如下图所示。

我不知道我做错了什么。任何帮助将不胜感激。

【问题讨论】:

未勾选列 userneedid。 如果不选择参考列,我将无法勾选。而且我无法选择此键的参考列。 @P.鲑鱼 先尝试在 UserNeedId 列上创建索引 已经创建了一个。没有运气。 @PeterHe 这可能是工作台中的一个错误。只需使用 SQL 命令创建 FK: ALTER TABLE user_needs_age_ranges ADD CONSTRAINT FK_user_needs_age_ranges_user_needs FOREIGN KEY (UserNeedId) REFERENCES user_needs(Id) ; 【参考方案1】:

您可以使用 alter table 语句代替 UI:

alter table user_need_age_ranges add foreign key (AgeRangeId) references age_ranges(Id);
alter table user_need_age_ranges add foreign key (UserNeedId) references user_needs(Id);

【讨论】:

以上是关于无法在 MySQL Workbench 中创建外键的主要内容,如果未能解决你的问题,请参考以下文章

在 MySQL 中创建外键会产生错误:

无法在PhpStorm中创建外键

在SQL Server 中创建外键

在 Mongoose 中创建外键关系

在 Xampp/phpmyadmin 中创建外键的问题

在 Spring Boot 中创建外键 - H2 数据库