弱实体的属性

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了弱实体的属性相关的知识,希望对你有一定的参考价值。

[目前,我正在阅读Korth,Silberschantz和Sudarhsan的数据库系统概念。我无法理解以下段落。

弱实体集可以参与除标识关系之外的关系。例如,付款实体可以参与与帐户实体集,标识从中付款的帐户。

一个弱实体集可以作为所有者参与与另一个弱实体集的标识关系。实体集。

也可以设置一个弱实体并带有多个标识,然后通过组合标识特定的弱实体实体,每个标识实体集合中的一个。弱实体集的主键将由标识实体集的主键的并集加上弱实体集的鉴别符组成。

这些重要概念非常紧凑地放在一小段中。很难解释这些概念背后的含义。谁能帮我理解吗?或者,如果您可以提供链接,我可以自己阅读。

答案

这有点抽象-我不确定您是否已复制了原稿的每个部分。

“弱实体”是不能在另一个上下文之外存在的实体。经典示例是购买系统中的“ order_lines”,仅在“ orders”表的上下文中才有意义。

一个弱实体集可以参与除识别关系。例如,付款实体可以与帐户实体集建立关系,确定付款的帐户。

这意味着,尽管弱势实体必须具有“标识”关系(在上面的示例中,order_line必须与其基表具有order_id关系),但它也可能与其他实体相关联,例如,订单线示例。增值税率不是_identifying_-您不能将订单行称为“订单中的一行增值税率为15%”。

[弱实体集可能以所有者身份参与识别与另一个弱实体集的关系。实体集。

这意味着一个弱实体有可能成为另一个弱实体的“父级”-另一个实体在父级之外毫无意义。例如,我们的购买系统可能有一个名为“ order_line_discounts”的表,该表捕获了应用于每个订单行的折扣。没有订单行,这些折扣就没有意义,没有订单,订单行就没有意义。

[也可能有一个弱实体,其中包含多个识别一个特定的弱实体将被一个实体的组合,每个标识实体集中的一个。的弱实体集的主键将包含标识实体集的主键,以及弱实体集。

这意味着一个弱小的实体可能需要一个以上的父母才能理解。如果发生这种情况,则主键由对所有父级的外键组成,再加上(如有必要)附加标识符以唯一地标识该组合。在我们的采购系统中,order_line是与orders相关的弱实体,但与products相关。一个订单的产品可能包含多行,因此“判别器”可让您唯一地标识每个订单行。

以上是关于弱实体的属性的主要内容,如果未能解决你的问题,请参考以下文章

在 ER 图上,我可以有一个依赖多个实体的弱实体吗?

数据库系统--如何将ER转化为关系模式

数据库系统--如何将ER转化为关系模式

数据库系统--如何将ER转化为关系模式

Objective-C 中的弱属性和强属性设置器属性

如果将弱属性分配给强属性会发生啥?