一、基本概念
1.实体
实体是客观存在并且可以相互区分的任何事物,可以是实际对象,也可以是抽象概念。
2.码
超码
能够惟一确定实体集中每个实体的属性集称为该实体集的超码
候选码
真子集都不是超码的极小超码是候选码
主码
主码是指数据库的设计者选中的,用来区分同一实体集中不同实体的候选码
码
“码”表示主码或候选码,而超码是码的超集
3.属性分类
- 简单属性和复合属性
简单属性指的是不能划分成更小部分的属性
复合属性和简单属性相对应,是可以划分成更小部分的属性
- 单值属性和多值属性
单值属性是特定的实体在该属性上只能取单个值的属性
多值属性是特定的实体在该属性上可以取多个值的属性
- 基本属性和派生属性
基本属性是不能通过其他属性的值推导出来(即它的值必须存储在系统中)的属性
派生属性的值可以从其他相关属性或实体计算得到,因此派生属性又称计算属性
4.联系
联系是多个实体之间的相互关联
联系集是相同类型联系的集合
角色:实体在联系中的作用称为实体的角色
联系的类型
- 一对一(1:1联系)
如果E1中的每个实体最多与E2中的一个实体相关联,并且E2中的每个实体也最多与E1中的一个实体相关联,则称E1和E2之间的联系为一对一联系。
例如:
- 一对多联系(1:n联系)
如果E1中的每个实体都可以与E2中任意多个实体相关联,而E2中的每个实体最多与E1中一个实体相关联,则称这种联系为E1到E2的一对多联系。
例如:实体集“职工”到实体集“部门”的联系“属于”就可以是多对一联系
- 多对多联系(m:n联系)
如果E1中的每个实体都可以与E2中任意多个实体相关联,并且E2中的每个实体也可以与E1中任意多个实体相关联,则称E1和E2之间联系为多对多的联系
例如,学生和课程之间的联系“选修”就是多对多联系
二、实体-联系图
实体联系图要素:
属性的处理
例如:
三、弱实体集
如果一个实体集的任何属性集都不足以形成该实体集的码,则称该实体集为弱实体集。
存在码的实体集称为强实体集。
例子:
将弱实体集处理为多值复合属性