mysql - 如何在一列上添加多列外键?
问题描述
我想在一列上添加多个外键约束。怎么可能?
这是我的表结构:
语言--------------------------------
- id | code | name | name -
--------------------------------
国家
---------------------------------------------
- id | country_id | language_id | name -
---------------------------------------------
城市
---------------------------------------------------------
- id | city_id | language_id | country_id | name -
---------------------------------------------------------
我想做的事?例如:如果我有国家法国和城市巴黎,我的表格应该是这样的:
国家---------------------------------------------
- id | country_id | language_id | name -
---------------------------------------------
1 1 1 France
2 1 2 საფრანგ
城市
---------------------------------------------------------
- id | city_id | language_id | country_id | name -
---------------------------------------------------------
1 1 1 1 Paris
2 1 2 1 პარიზი
因此,如您所见,每个国家/地区都有唯一的 ID(自动增量)列和 (own_id, language_id) 唯一对。如何将外键约束添加到引用(language_id,own_id)唯一列?这怎么可能?我必须只添加(own_id)references on other tables id
外键吗?
任何帮助将不胜感激。
解决方案
ALTER TABLE ADD CONSTRAINT constraint_name FOREIGN KEY (c1) REFERENCES parent_table (p1);
那是你要的吗?
推荐阅读
- python - 如何使用数学修复 2d pygame 中的奇怪渲染问题
- post - aria2c 可以支持 POST 请求吗?
- python - Value of variable disappears after few function calls
- javascript - amCharts - 节点之间链接的工具提示
- python - 识别噪声图中的水平区域
- android - 引入可变变量后无法获取属性的属性位置
- hadoop - “连续字段的容器格式”对文件格式意味着什么?
- spring - Hibernate createNativeQuery 确实替换了 Exasol 方言的占位符
- biztalk - 字段为空时如何替换字段的值?
- apache-spark - 是否有使用 pyspark 计算列平均值的代码?