在概念模型中定义依赖于另一种关系的关系

时间:2015-12-09 10:46:50

标签: entity-relationship data-modeling powerdesigner conceptual-model

我需要帮助在数据库的概念模型中定义关系。我在PowerDesiner中这样做。我有3个实体(我们称之为A,B和C)。

A doesn't have to have B, if A has B then only once.
B has to have at least one A.
B may have C, but doesn't have to.
C have precisely two B.
C has at least one A.
C can have A only if A is part of B, which is in relationship with C (one of the two B to C).
A may have C, but doesn't have to.

这对我来说太复杂了,我有一个想法,但结果证明是完全错误的。它只是项目的一部分,但其余部分不影响那些3.我需要在概念层面上做这些限制,这正是我的问题。

我的第一个也是最好的想法是这个http://i.snag.gy/Ofdze.jpg,但是它不包括只有当A是B的一部分时C才能有A的条件,它与C有关(两个B中的一个)到C)

然后我想出了这个http://i.snag.gy/gKNQ9.jpg但是在我认为它不包含相同条件之前作为解决方案,更糟糕的是似乎真的搞砸了解决方案。

1 个答案:

答案 0 :(得分:1)

确定,
为清楚起见,我会将您的关系条件引用到您描述的行数,因此 Row_1-2 将引用您问题的第1行和第2行中的语句。

请注意,您的第5和第6次陈述中有逻辑错误 你说 C至少有一个A C只能在...... 时才有A,这两个是不可能的。
我将跳过第5个并保留第6个答案。

让我们看一下,首先添加A和B之间的关系

enter image description here

然后选择关系并右键单击它并选择更改为实体
你会得到:

enter image description here

注意这个新实体识别A和B之间的关系,你需要它来完成你的第6个陈述 现在添加C和B之间以及C和A之间的关系(通过 Rel_A-B

enter image description here

注意,我已经调整了B和C之间的基数(2,2)