不使用多对多关系有什么好处吗

pxiryf3j  于 2021-07-24  发布在  Java
关注(0)|答案(1)|浏览(387)

关闭。这个问题是基于意见的。它目前不接受答案。
**想改进这个问题吗?**更新这个问题,这样就可以通过编辑这篇文章用事实和引文来回答。

9个月前关门了。
改进这个问题
我已被要求创建一个小程序的任务,根据给定的指示。我得到了两个必须创建的表: product 包含两个字段的表: id 以及 name , category_of_product 包含两个字段的表: product_id 以及 name 据说产品有很多种类。
我还得到了产品示例:
产品:耐克鞋,类别:运动鞋,类别:新款
产品:匡威鞋,类别:运动鞋,类别:新款
等。
为了完成任务,每个示例条目都有两个类别,最后我必须调用数据库以获取所需的产品 a 类别,但不在 b 类别。
我首先想到的是多对多关系,在我看来,它仍然是使用它的几乎唯一选择。但由于我不得不这样做,我使它与重复的类别,其中每个类别只能分配给一个产品。
最后我要给出他们给我的方法的利弊,并提出备选方案。
问题是:有没有真正的专业人士把数据库设置成这样?我想这可能是一个有少量的数据查询快一点,但我不确定这是否是一个好的赞成我们得到的缺点。

slsn1g29

slsn1g291#

我想不出有什么“好处”不去定义一种关系,因为它将存在。如果关系是 product has one to many categories 那么这就是一种多对多的关系,我们试图以任何其他方式实现它都是愚蠢的。否则,我们无法保证数据的唯一性、强制执行外键关系或创建访问数据的有效方法。

相关问题