我正在尝试创建conceptual data model
using PowerDesigner
,我发现两种方法之间存在冲突:
- 创建两个实体和它们之间的关系
- 创建一个关联和三个实体和两个关系。
知道这两种方法在生成physical data model
下图说明了这两种方法
我正在尝试创建conceptual data model
using PowerDesigner
,我发现两种方法之间存在冲突:
知道这两种方法在生成physical data model
下图说明了这两种方法
关联和关系是 Power-designer 中不同的概念术语。
An是两个或多个实体Association
之间的关系 。
一个可以有属性。Association
ARelationship
是两个实体之间的关系。
ARelationship
没有属性。
关联是更一般的关系形式。
例如:
考虑设计多对多关系CustomerEntity
,CreditGroupEntity
设计关系Relationship
将创建第三个表,其中仅包含 CustomerEntity 主键和 CreditGroupEntity 主键。
设计与关联的关系并向关联Association
添加分配日期属性将创建第三个表,其中包含 CustomerEntity 主键、CreditGroupEntity 主键和分配日期字段。
您使用的样本包含 0-n 基数,没有关联属性,因此看不到差异。
当关系本身是具有属性的实体时,通常使用关联。
没有属性的关系由Relationship 实现。
看它,就好像你试图用不同的语言或同一种语言的不同“版本”来表达一些东西。
当你想表达“你是个白痴”时,你可以直截了当地说“你是个白痴”,或者运用典型的英国轻描淡写的艺术,你可以说“我认为你看起来问题的某些关键要素”被忽视了”。这两个句子远非相同,但它们可能很好地表达了相同的预期含义。
这与 ER 图表相同。 你想表达的东西没有一种独特的[在这种情况下是图形的]表达方式。 你要表达的是语义,你如何表达的是语法。相同的语义可以用不同的语法来表达,这不是一个错误,而是一个特性!