2017-03-29 32 views
0

cource有一个关系的基数,例如(0-1:1-n)。 但是,你能表达一些类似于:“在这个关系中A的基数是0-1”或“在这个关系中B的基数是1-n”。DM理论定义:一个实体的一个基数是指什么?

我正在构建一个用于数据建模的元数据模型,我想为两个实体的基数(cardinality_a_min,..._max,... b_min,... b_max等)指定属性。我可以编写评论来确保每个人都知道这些属性指向哪个方面。但我想知道这个问题在理论上是否有明确的定义。我知道在一个ERD-Notation A(0-1)中:(1-n)B表示有许多As,而在另一个表示中表示有很多Bs。对于数据建模理论,这也是如此吗?还是它有明确的定义? 说“A的基数为1-n”的问题可能如下:我有很多像现在一样,或者对许多其他实体有一个A指向?

回答

0

您可以将关系中属性的基数看作来自该属性域的值的数量,该值可以与关系中其他属性的每个有效值组合相关联。例如:

在1:M关系中(例如与候选关键字B的关系(A,B)),A中的每个值都可以与B中的许多值关联,并且B中的每个值都可以与A中的单个值。

1:1和M:N关系很简单,我不会列举它们。这种方法也适用于高度关系:

在M:N:1关系(例如与候选关键字A,B的关系(A,B,C))中,A,B值的每个组合与来自C的单个值相关联。来自一个或多个域的每个其他值的组合可以与来自其余域的许多值相关联。在M:1:1关系(例如与候选关键字A的关系(A,B,C))中,每个A值可以与B和C的单个组合关联。每个B值可以关联与A和C的许多组合,并且每个C与许多A,B。

在上一个例子中,注意避免“每个B都与一个C关联”的概念。关联发生在函数或多值依赖关系线上,在这种情况下是通过A.也就是说,每个B与许多A关联,每个关联一个C.在传递上,每个B与许多C关联,反之亦然。

有关此主题的更多详细信息,我建议您仔细研究数据建模的逻辑基础。特定主题包括关系中的功能和多值依赖以及阿姆斯特朗的公理。

相关问题