ER模型用于从数据角度对系统的逻辑视图进行建模,该视图由以下组件组成:
实体、实体类型、实体集——
一个实体可能是一个实体存在——一个特定的人、汽车、房子或员工——也可能是一个概念存在——一个公司、一份工作或一所大学课程。
实体是实体类型的对象,所有实体的集合称为实体集。例如。;E1是具有实体类型Student的实体,所有学生的集合称为实体集合。在图中,实体类型表示为:
属性: 属性是 定义实体类型的属性 例如,卷号、姓名、出生日期、年龄、地址、手机号是定义实体类型学生的属性。在ER图中,属性由椭圆形表示。
1.关键属性- 这个属性 唯一地标识每个实体 在实体集合中称为键属性。例如,Roll_No对每个学生都是唯一的。在ER图中,关键属性由一个带底层线条的椭圆形表示。
2.复合属性- 属性 由许多其他属性组成 被称为复合属性。例如,学生实体类型的地址属性由街道、城市、州和国家组成。在ER图中,复合属性由一个椭圆形组成。
3.多值属性- 由…组成的属性 不止一个值 对于给定的实体。例如,Phone_No(对于给定的学生可以是多个)。在ER图中,多值属性用双椭圆表示。
4.派生属性- 一个可以 源自其他属性 实体类型的属性称为派生属性。例如。;年龄(可从出生日期推断)。在ER图中,派生属性用虚线椭圆表示。
完整的实体类型 大学生 其属性可以表示为:
关系类型和关系集: 关系类型代表 实体类型之间的关联 。例如,“注册”是实体类型学生和课程之间存在的关系类型。在ER图中,关系类型由菱形表示,并用线连接实体。
同一类型的一组关系称为关系集。以下关系集描述了S1在C2中注册,S2在C1中注册,S3在C3中注册。
关系集的度: 不同实体集的数量 参与一段关系 集合被称为关系集合的度。
1.一元关系- 当有 只有一个实体集参与一个关系 ,这种关系被称为一元关系。例如,一个人只与一个人结婚。
2.二元关系—— 当有 参与关系的两个实体集合 ,这种关系被称为二元关系。例如,学生注册参加了这门课程。
3.n元关系- 当一个关系中有n个实体集参与时,该关系称为n元关系。
基数:
这个 实体集的实体参与关系的次数 集合被称为基数。基数可以是不同的类型:
1.一对一—— 当每个实体集中的每个实体都可以参与时 在这段关系中只有一次 ,基数是一对一。让我们假设一个男性可以和一个女性结婚,一个女性可以和一个男性结婚。所以这种关系将是一对一的。
使用集合,它可以表示为:
2.多对一- 当一个实体集中的实体 只能在关系集中参与一次,其他实体集中的实体可以在关系集中参与多次, 基数是多对一的。让我们假设一个学生只能选修一门课,但一门课可以被许多学生选修。所以基数是n比1。这意味着一门课程可以有n名学生,但对于一名学生,只有一门课程。
使用集合,它可以表示为:
在这种情况下,每个学生只选了一门课,但很多学生选了一门课。
3.多对多- 当所有实体集中的实体都可以 不止一次地参与这段关系 基数是多对多的。假设一个学生可以选修一门以上的课程,一门课程可以被许多学生选修。因此,这种关系将是多对多的。
使用集合,它可以表示为:
在本例中,学生S1在C1和C3中注册,课程C3由S1、S3和S4注册。所以这是多对多的关系。
参与限制: 参与约束应用于参与关系集的实体。
1.全部参与- 实体集中的每个实体 必须参与 在这段关系中。如果每个学生都必须参加一门课程,那么学生的参与人数将是全部。在ER图中,总参与度用双线表示。
2.部分参与- 实体集中的实体 可以参加也可以不参加 在这段关系中,我感到很不安。如果某些课程未被任何学生注册,课程将部分参与。
该图描述了“已注册”关系集,其中学生实体集有全部参与,课程实体集有部分参与。
使用set,它可以表示为,
学生实体集合中的每个学生都参与了关系,但存在一个不参与关系的课程C4。
弱实体类型和识别关系: 如前所述,实体类型具有唯一标识实体集中每个实体的键属性。但确实存在 无法为其定义键属性的某些实体类型 .这些被称为弱实体类型。
例如,公司可能会存储员工家属(父母、子女、配偶)的信息。但是,如果没有员工,家属就不存在。因此,依赖将是弱实体类型,员工将识别依赖的实体类型。
弱实体类型由双矩形表示。弱实体类型的参与总是全面的。弱实体类型与其识别强实体类型之间的关系称为识别关系,并用双菱形表示。
文章由Sonal Tuteja提供。如果您发现任何不正确的地方,或者您想分享有关上述主题的更多信息,请写评论