与两个不同表的外键相同的主键

时间:2014-05-22 15:49:40

标签: mysql sql

我想制作三个表格,ProvincesLanguagesCities

我的ProvincesCities使用Languages。所以我创建了连接表,Provinces_LanguagesCities_Languages。所有表格都包含idname作为列。


ID
名称

语言
ID
名称

Provinces_Languages
province_id
languages_id

外键          enter image description here

同样适用于城市:

城市
ID
名称

使用相同的语言表

Cities_Languages
cities_id
languages_id

外键

enter image description here

但是,它不能使用来自该语言的相同主键。我收到了这个错误:

enter image description here

我如何解决这个问题? 提前致谢

2 个答案:

答案 0 :(得分:1)

您已经有一个名为FK_Language的约束。使用其他名称

答案 1 :(得分:1)

当您尝试再次创建时,

FK_Language已存在。

您应该创建单独的alter table语句,确保在再次创建FK之前删除它。

基本上:您尝试放弃FK并同时重新创建,但不会有效。

顺便说一下,您应该确定是使用Cities_Languages还是langauges_cities