2017-03-28 33 views
1

我有两个表理解关系属性和关联实体之间的区别/桌子

表A具有主键,X和属性A,B,C

表B具有主键,Y和属性d,E,F

还存在着第三结表(我们称之为表C):这包含外键X,Y

联结表表C是否可以访问A和B的实例特定属性,即它是否可以访问特定于实例的属性A,B,C,D,E,F?

此外,使用此联结表(也称为组合实体),复合实体/联结表与具有2个外键插入其中的普通表之间的区别是什么?我们为什么要做这个区别?

+0

真的需要帮助! –

回答

1

表格无权访问其他表格。表格不是彼此交互的机器。表格只是包含一组行的变量。它是通过查询访问表的数据库的用户。

在表格(例如X在表A表C)的共同结构域允许你一同加入匹配值,即你将能够访问的表一起使用合适的查询。

我相信“联结表”和“合成实体”等术语来自旧的分层或网络数据模型。在实体 - 关系模型中,我们将称为表C的关系关系(与实体关系相反,如表A表B),并且在关系模型中,所有三个表格都是简单的关系。

表C不仅仅是两个外键。一列或两列应该是唯一键或主键的一部分。如果只有一列,那么这个域的值只能在表中出现一次,这意味着你有一对多的关系(唯一受约束的域是多边的,因为每个值只能出现一次与另一个值关联一次)。如果两列都是唯一/主键的一部分,那么您就有了多对多的关系,其中各个值可以多次出现,但每个值的组合只能出现一次。

+0

谢谢你,很清楚!术语“合成实体”和“关系关系”很有意思。任何具有至少两个外键的表都可以称为这个,或者这个术语是专门针对特定设计一个特定方式的表,也就是说,只有两个外键? 再次感谢! –

+0

ER中的关系关系指实体集合的任何关联。任何包含多个实体关键字的表都包含关系关系。然而,可以将实体关系和关系关系组合到同一个表中,例如,通过将一对多关系关系非正规化为多方实体集的实体关系。 – reaanb

相关问题