如何在sql中创建两个表之间的关系?

时间:2017-02-26 18:25:09

标签: database

例如,我有一个名为“country”的表和另一个名为“mineral”的表。有几百个国家,可能有几千种矿物。与此同时,每个国家都生产不同类型的矿物。我需要一种方法来记录每个在一个地方生产某些类型矿物的国家。实现这一目标的最佳方式是什么?非常感谢。

2 个答案:

答案 0 :(得分:1)

这是多对多的关系。您可以使用三个表来组织它。一个记录国家的表格,一个记录矿物的表格,另一个将国家与矿物联系起来的表格。所以你已经有了前两个表,只需添加将它们链接在一起的表:

Countries(CountryID, Name, ...)
Minerals(MineralID, Name, ...)
Countries_Mineral(MineralID, CountryID)

链接它们的表应包含外键,即它们指向各自表中的主键。

答案 1 :(得分:0)

你需要为此创建一个外键关系,如果你使用像phpmyadmin这样的n sql mager,它很容易实现,你可以在结构/关系视图中得到它