Database design 数据库设计附加表

Database design 数据库设计附加表,database-design,uml,Database Design,Uml,我有一张名为服装的表格,它由面板组成,每个面板可以使用26种默认颜色进行着色。问题是,每件衣服都可以使用一种面料制作,每种面料都允许添加1种或更多颜色。 我已经创建了一个draw.io图来帮助理解我的问题 基本上, 服装有一种面料,它有一套面料颜色。服装也有GarmentColor,这是颜色和面料颜色的集合,但我不确定如何定义这种关系。 在我的设计中,GarmentColor有两个可选外键:FabricColourId和ColourId。我认为这可以做得更好,但我不确定如何做 以前有没有人遇到

我有一张名为服装的表格,它由面板组成,每个面板可以使用26种默认颜色进行着色。问题是,每件衣服都可以使用一种面料制作,每种面料都允许添加1种或更多颜色。 我已经创建了一个draw.io图来帮助理解我的问题

基本上, 服装有一种面料,它有一套面料颜色服装也有GarmentColor,这是颜色和面料颜色的集合,但我不确定如何定义这种关系。 在我的设计中,GarmentColor有两个可选外键:FabricColourIdColourId。我认为这可以做得更好,但我不确定如何做

以前有没有人遇到过类似的问题?如果是,你是如何解决的

更新1

这是文档的png,以防您无法打开它:)


大约30年前,当我研究数据库设计时,我们曾称之为吊架。这是一张桌子和另外两张桌子的关系。在类设计中,这是一个关联类。这一方法被普遍接受。出于性能原因,并通过应用某些约束,您可以在服装中保留有限的关系列表,例如
服装
。这将是一个类似于
color1
color2
的专栏。如您所见,这将极大地限制可能的关系的数量

你介意发布png吗?当然,我已经更新了我的问题为什么FabricColor不引用颜色?