我有一个名为 Project 的表。为简单起见,假设它有一个名为 projectId 的列。
项目 --------- 项目 ID PK
我还有一张桌子。它被称为子项目。它有两列,一列称为projectId,另一列称为subProjectId。两列构成主键。
子项目 -------- 项目 ID PK 子项目 ID PK
他们的工作方式是您在项目表中列出了一堆项目。其中一些项目可以是项目的子项目。例如,如果项目表有 3 行这样
项目 -------- 项目编号 1 2 3
项目 2 和 3 可以被认为是项目 1 的子项目。这是子项目表的来源。为了表示这一点,子项目看起来像这样
子项目 -------- 1 ,2 1 ,3
这意味着项目 2 和项目 3 是项目 1 的子项目。
我在为此创建模型时遇到问题。在 SubProjects 表中,我需要 projectId 和 subProjectId 来引用 Projects 表中的 projectId。但是,关键是他们可以引用不同的项目。我想我应该使用外键来做到这一点?这有意义吗?这是允许的吗?有一个更好的方法吗?
我正在使用 MySql 和 MySql 工作台,但似乎无法解决这个问题。有任何想法吗?
编辑一个项目可以是多个表的子项目。