非身份关系基数

时间:2016-11-19 17:29:03

标签: sql foreign-key-relationship

有人可以帮我找出:

为什么毫无意义非身份关系具有n:m基数?

1 个答案:

答案 0 :(得分:2)

n:m基数表示多对多关系,这是通过创建第三个表来实现的,该表引用了多对多关系中的每个表。

例如,电子商务系统中的多对多关系可能介于产品和订单之间。给定的产品可以是许多订单的一部分,给定的订单可以包含许多产品。

Products >----< Orders

实现这一目标的方法是使用&#34;中间&#34;表,其中每行恰好引用一个产品和一个订单。

Products ----< LineItems >---- Orders

LineItems和Products之间存在识别关系,LineItems和Orders之间存在另一种识别关系。在每种情况下,LineItems中的外键都是其主键的一部分,因此它是一种识别关系。

但是在这个数据模型中,无论是哪个方向,产品和订单之间都没有外键直接引用。它们依赖LineItems表来保存这些引用。

因此,n:m基数中的产品和订单之间没有识别或非识别关系。它们都没有包含另一个的外键。