我环顾四周,发现了一些类似的问题,但它们是针对 SQL Server 的。
这是我创建的一个小型数据库,只是为了向您展示我想要建模的关系。基本上它很简单,每年有 12 个时期,一个时期-年的实例不能出现两次(时期 9 年 2012 年不能出现超过一次)。
所以我认为最好的建模方法是有一个表格周期,其中只有一个字段的值从 1 到 12,表格年份遵循相同的逻辑(2011,2012 ......),因为它是 N- to-N 关系我创建了 period_by_year 表,该表将它们连接起来以供 rpt_maintenance_kpi 使用。现在棘手的部分是,为了使每个组合都是唯一的,我将 period_no 和 year_no 都设置为复合主键。在我看来,这很好地解决了这个问题,但是我被困在如何从 rpt_maintenance_kpi(或任何其他表)中引用这个复合主键。我尝试进行两次连接,但这似乎不起作用(创建第二个 rpt_maintenance_kpi 表,我相信这不会做我想做的事)。
那么如何处理复合主键的外键呢?
提前谢谢了。