Oracle ID,PK和FK数据库架构

时间:2017-04-25 22:57:32

标签: sql database oracle

我有一个非常简单的问题。我想做的就是创建一个数据库模式。

Database Schema

  • PLANT有两列:PLANT_ID(主键)和NAME来自KNIME
  • 表格PRODUCTION也有两列:主键和NAME,也来自KNIME

我想要的是PLANT_ID列也应该在PRODUCTION表中。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

目前还不清楚你想要什么;应根据工厂和生产实体之间的关系来规定要求。 PRODUCTION可以持有PLANT的ID(如果生产实体可以拥有一个工厂)[反之亦然]。这实际上取决于植物与生产之间关系的肉体。如果Production可以有一个且只有Plant,那么只需将plant_id列放在Production表中(即外键)。如果它是多对多的(即生产实体可以有许多工厂或工厂实体可以与生产实体有很多关系)那么你需要一个交叉实体",比如Plant_Production只有plant_id和Production_id(如果业务要求需要,可能会描述关系)。

答案 1 :(得分:0)

我认为您要问的是如何创建数据库约束,以便PRODUCTION.PLANT_PLANT_ID始终引用PLANT中的行。

要做到这一点,你需要:

  1. 将主键添加到PLANT表。
  2. PRODUCTION(PLANT_PLANT_ID)的外键添加到PLANT
  3. 请参阅:Alter Table Oracle Documentation