概念模型中的基本概念
概念模型用于信息世界的建模,是数据库涉及的能力工具,也是数据库设计人员和用户直接进行交流的语言,主要通过E-R图进行描述
| 构件 | 说明 |
|---|---|
| 矩形 | 表示实体集,通常在矩形边框内写实体名 |
| 双边矩形 | 表示弱实体集,通常双边矩形框内写明弱实体名 |
| 菱形 | 表示联系集,通常在菱形框内写明联系名 |
| 双边菱形 | 表示弱实体集对应的标识性联系 |
| 椭圆 | 表示属性,通常在椭圆内写明属性名 |
| 线段 | 将属性与相关实体集连接,或将实体集与联系集相连 |
| 双椭圆 | 表示多值属性 |
| 虚椭圆 | 表示派生属性 |
| 双线 | 表示一个实体全部参与到联系集中 |
- 实体(Entity):客观存在并可相互区别的事物称为实体。可以是具体的人,是,物或抽象的概念。(类似于一个一个的学生)
- 属性(Attribute): 实体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。(比如 :学生编号,姓名,性别,年龄....)
- 码(Key): 唯一标识实体的属性集称为码
- 域(Domain): 属性的取值范围称为该属性的域
- 实体型(Entity Type): 用实体名及其属性名集合来抽象和刻画同类实体为实体型
- 实体集(Entity Set):同一类型实体的集合称为实体集(整个学生表为实体c的分类
- 简单属性:原子的,不可再分的
- 复合属性:可细分为多个属性部分
- 单值属性:定义的属性对于一个特定的实体都只有单独的一个值
- 多值属性: 一个属性肯对应一组值
- NULL属性: 当实体在某个属性上没有值或属性值未知时,使用NULL值
- 派生属性:可以从其他属性的来(通过其他属性推导的出来的属性)
实体型之间的联系
- 现实世界中事物内部以及事物之间的联系,在信息世界中反映为实体内部的联系。
- 实体内部的联系通常是指组成实体的各属性之间的联系
-
实体之间的联系通常指不同实体集之间的联系
2_111.png
- 一对一联系(1:1)
什么是一对一联系?
如果对于实体集A中的每一个实体,实体集B中至多有一个(也可以没有)实体与之联系,反指也亦然,则称实体集A与实体集B具有一对一联系,记为1:1
eg:已图为例,一个班级有一名班长,也可能没有班长,一个班长只能属于一个班级
1-11.png
-
一对多联系 (1:n)
什么是一对多?
如果对于集体集A中的每一个实体,实体集B中有n个实体(n>=0)与之有联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:n
eg
已图为例: 一个班级由多个学生组成,多个学生属于同一个班级
1-12.png
-
多对多的联系(m:n)
什么是多对多的联系
如果对于实体集A中的每一个实体,实体集B中有n个实体(n>=0)与之联系,反之,对于实体集B中每一个实体,实体集A中也有m个实体(m>=0)与之联系,则称实体集A与实体B具有多对多联系,记为m:n
eg:
以图为例:一个学生可以选修多门课程,一门课程可以被多个学生选择
image.png
两个以上实体型之间的联系
*多个实体型的一对一联系 1:1
以图为例
- 子女,丈夫,妻子三个实体型
一夫一妻,且严格计划生育- 一个子女只有一个爸爸,一个妈妈
- 一个丈夫,只有一个子女,一个妻子
-
一个妻子,只有一个丈夫,一个子女
2-1.png
*两个以上实体型之间一对多关系 1:m:n
以图为例
课程,教师,参考书
一门课程可以由若干个教师讲课,使用若干本参考书
一个教师只能教授一门课程,使用一本参考书
每一本参考书只针对一门课程使用
2-2.png
*两个意思实体型的多对多的联系 m:n:p
以图为例
供应商,项目,零件三个实体型
一个供应商可以供给多个项目多个零件,
每个项目可以使用多个供应商供应零件
每种零件可以由不同的供应商供应
2-3.png
E-R图(实体-关系图)
-
基本E-R图
3-1.png
以此图为例,
矩形---- 实体型
椭圆 --- 属性
菱形 --- 联系
注:联系本身也是一种实体行,也可以有属性 - 扩展E-R图
-
弱实体
弱实体的存在必须以另一个实体为前提
以图为例,公司举办聚会,需要职工参加,职工可以带家属,需要登记信息,家属属于弱实体,因为它的存在基于职工
4-1.png
2 .特殊化
父类和子类的关系,有子类允许重复和不重复的两种形式
以图为例
左图 : 学生这个实体,可以派生出子类分别为(专科生,本科生,研究生,在职生)子类不会重复
右图: 教职工这个实体,可以派生子类(在职生,教师,工人),子类会重复,比如一个教职工可能是在职生也可能是教师
5-1.png












网友评论