单一关系M:N表示未知元素编号

时间:2013-04-14 23:39:27

标签: mysql database-design relation

目前我有一篇文章,其中包含与其他元素的各种M:N关系,问题是这些元素可以并且将会成长,并且不希望在我的数据库中拥有该数量的表。

enter image description here

这是建立单一关系的正确方法M:N表示未知数量的元素

2 个答案:

答案 0 :(得分:1)

  

建立单一关系的正确方法M:N表示未知数量的元素

为每个M:N关系设置单独的联结表没有什么特别的错误。

话虽这么说,你可以用更通用的方式处理这些关系,同时通过使用继承 1 来降低表的数量:

enter image description here

有关继承概念的更多信息,请在ERwin Methods Guide中搜索“子类型关系”。有关如何在关系数据库中实现继承的一些提示,请查看:


1 Aka。类别,子类化,子类型,泛化层次......

答案 1 :(得分:0)

如果所有元素都具有相同的属性您可以将它们全部保存在一个具有额外列(最佳枚举)的表中以区分它们。

但是看看你提供的图像他们可能没有相同的属性,所以以某种方式迫使他们只在一个或几个表中会很困难和低效。

您可能创建的表数量没有限制,我不知道您为什么要避免为每个关系创建一个新表。