当前位置:
文档之家› 数据库原理 第六章 E-R模型的设计方法
数据库原理 第六章 E-R模型的设计方法
E-R模型的设计方法分成三步; 模型的设计方法分成三步;
设计实体类型、 1、设计实体类型、确定属性和主码 设计实体之间的联系类型,确定是否有联系的属性。 2、设计实体之间的联系类型,确定是否有联系的属性。 3、写出关系模式
借阅人与书籍之间“借阅”联系 借阅人与书籍之间“借阅”联系M:N 书籍与出版社之间“出版”联系N:1 书籍与出版社之间“出版”联系N:1 管理员与借阅人之间“管理”联系M;N 管理员与借阅人之间“管理”联系 管理员与书籍之间“维护”联系M:N 管理员与书籍之间“维护”联系 管理员与出版社之间“设置”联系M:N 管理员与出版社之间“设置”联系
出生日期
年
月
日
属性的基本分类( 6.2 属性的基本分类(三)
一、属性类别分类(三) 属性类别分类( 导出属性 导出属性 可以由其他相互依赖的属性推导而来的属性
学号 系别
姓名
性别
学生 出生日期
年龄
演算得出
属性的基本分类( 6.2 属性的基本分类(四)
二、按照属性的取值特点分类 单值属性
同一实体的某个属性只能取一个值。 同一实体的某个属性只能取一个值。
指客观存在并且可以相互区别的事物,它可以是具体的人、 指客观存在并且可以相互区别的事物,它可以是具体的人、事、 也可以是抽象的概念或联系。 物,也可以是抽象的概念或联系。 用矩形描述实体,内部写明实体的名称。 用矩形描述实体,内部写明实体的名称。
联系(Relationship) 联系(Relationship)
2、弱实体 、
若一个实体对另一个实体具有很强的依赖联系, 若一个实体对另一个实体具有很强的依赖联系,同时该实体 主码的全部或部分通过其父实体中获得, 主码的全部或部分通过其父实体中获得,则称该实体为弱实 体。 双矩形符号表示若实体, 双菱形符号表示若实体联系 符号表示若实体 符号表示若实体联系。 用双矩形符号表示若实体,用双菱形符号表示若实体联系。
3、确定实体和联系属性以及实体类型的主码。 、确定实体和联系属性以及实体类型的主码。
本章节小结
模型的方法是数据库设计常用方法。 E-R 模型的方法是数据库设计常用方法。 属性
是实体或属性所具有的第一特性, 是实体或属性所具有的第一特性,引入分类识别基本或复 合属性;单值或多值属性;准确定位属性的类型、 合属性;单值或多值属性;准确定位属性的类型、有利于 更好地创建E 模型。 更好地创建E-R模型。
联系: 联系:
引入联系的元数、联系的连通词和联系的基数, 引入联系的元数、联系的连通词和联系的基数,准确定位 联系的类型和联系的实体,从而丰富E-R的内容。 联系的类型和联系的实体,从而丰富E 的内容。
E-R模型应尽量满足用户需求, 模型应尽量满足用户需求,
对特殊语义,引入依赖联系和弱实体、子类和父类的概念, 对特殊语义,引入依赖联系和弱实体、子类和父类的概念, 应用系统的设计要求。 应用系统的设计要求。
实体实体-联系模型的基本概念
实体 属性 实体类型 实体集 联系
客观存在的事物 事务的特征 属性的集合 实体的集合 属性之间的联系
每个属性都 有一个值域, 有一个值域, 可以是单值 或多值
E-R 模型的表示及例子
在E-R图中,基本的图形表示为: 图中,基本的图形表示为: 实体集 联系集
名称 名称
属性
名称
举例说明: 举例说明:
学号 系别 姓名 性别 课程号 课名 学生 选 学分 成绩 课程 类型
年龄
6.2 属性的基本分类
一、属性类别分类(一) 属性类别分类( 基本属性 不可再分的属性
零件
颜色 编码 名称 规格 产地
属性的基本分类( 6.2 属性的基本分类(二)
一、属性类别分类(二) 属性类别分类( 复合属性 可以继续进行分解的属性,属性可以嵌套。 可以继续进行分解的属性,属性可以嵌套。
数据库原理
第六章 E-R模型的设计方法 模型的设计方法
1
本章内容概要
E-R模型的基本元素 属性的基本分类 属性类别分类 属性取值特点分类 联系的设计方法 E-R模型的扩充 E-R模型的实例介绍 (略)
E6.1 E-R 模型的基本元素
E-R模型的基本元素:实体、属性、联系 模型的基本元素:实体、属性、 实体(Entity-Relationship): 实体(Entity-Relationship):
超市与职工之间“聘用”联系 超市与职工之间“聘用”联系1:N 超市与商品之间“经营”联系M:N 超市与商品之间“经营”联系M:N 商品与职工之间“销售”联系M:N 商品与职工之间“销售”联系
3、确定实体和联系属性以及实体类型的主码。 、确定实体和联系属性以及实体类型的主码。
确定各个实体属性:(属性1.2.3…) 确定各个实体属性:(属性 :(属性 ) 确定联系属性: 确定联系属性: 依据联系逐步写出关系模式,见教材142 依据联系逐步写出关系模式,见教材
6.3 联系的设计方法
三元联系中的三种关系 M:N:P (零件、项目、供应商之间的多对多的供应关系) 零件、项目、供应商之间的多对多的供应关系)
联系的基数 针对连通词的描述过于简单,使用联系的基数详细描述。 针对连通词的描述过于简单,使用联系的基数详细描述。 使用( 使用(Min,Max)最小连通数,最大连通数的基数描述 )最小连通数,
多值属性
多值属性是指同一实体的某个属性可以取多个值。 多值属性是指同一实体的某个属性可以取多个值。 多值属性用双椭圆 来表示。 多值属性用双椭圆 来表示。 多值属性存在大量冗余及操作异常,必须进行转换。 多值属性存在大量冗余及操作异常,必须进行转换。 方法一:将多值属性变换成为多个单值属性。 方法一:将多值属性变换成为多个单值属性。 电话 手机 家庭电话 办公电话
子类与父类
就是继承的概念: 模型中它们具有相同的实体标识符。 就是继承的概念:在E-R模型中它们具有相同的实体标识符。 模型中它们具有相同的实体标识符 表示父类, 用两端双线矩形 表示父类,又用中间加圈的无向线 连接父类与子类。 连接父类与子类。
E6.5 E-R 模型的实例介绍
请同学们看教材,P141[例6.8] 请同学们看教材, 例 问题:某超市连锁公司业务管理系统的E-R模型 问题:某超市连锁公司业务管理系统的 模型 1、确定实体类型:超市、职工、商品三类实体 、确定实体类型:超市、职工、商品三类实体 2、确定联系类型: 、确定联系类型:
指不同的实体之间,实体集内实体与实体间以及组成实体的各 指不同的实体之间, 属性的关联。 属性的关联。 用菱形表示联系,内部写明联系的名称。 用菱形表示联系,内部写明联系的名称。并用无向线段分别将 有关联的实体连接起来。 有关联的实体连接起来。
属性(Attriute) 属性(Attriute)
指实体或联系所具有的某一特性。通常一个实体是由若干个属 指实体或联系所具有的某一特性。 性来描述的, 性来描述的,我们把能够唯一标识实体的属性或属性集成为实体 标识符(主码),而实体只有一个实体标识符。 ),而实体只有一个实体标识符 标识符(主码),而实体只有一个实体标识符。 用椭圆表示属性,内写明属性名称,用无向线段连接相应实体。 用椭圆表示属性,内写明属性名称,用无向线段连接相应实体。
联系的连通词: 联系的连通词
联系涉及的实体集之间四题对应的方式,也就是说联系的类型。 联系涉及的实体集之间四题对应的方式,也就是说联系的类型。 连通词关系有三种: 连通词关系有三种:1:1; 1:N; M:N。 。 一元联系中的三种关系: 排列关系(选手之间) 一元联系中的三种关系:1:1 排列关系(选手之间) 1:N 领导关系(领导和职工之间) 领导关系(领导和职工之间) M:N 组合关系(零件之间) 组合关系(零件之间) 二元联系中的三种关系: 管理关系(班主任与班级之间) 二元联系中的三种关系:1:1 管理关系(班主任与班级之间) 1:N 聘用关系(车队与司机之间) 聘用关系(车队与司机之间) M:N 讲授关系(教师与课程之间) 讲授关系(教师与课程之间)
方法二:将多值属性转化成实体进行联系( 方法二:将多值属性转化成实体进行联系(1:N)。 )。 员工 电话 具有 电话 电话类别 电话号码
属性的基本分类( 6.2 属性的基本分类(五)
二、按照属性的取值特点分类 空 值
空值( Value)表示无意义、或值存在但没有该信息、 空值(Null Value)表示无意义、或值存在但没有该信息、 或不能确定是否存在的属性。 或不能确定是否存在的属性。 在不能确定其值情况,可以使用Null Null空值表示属性 在不能确定其值情况,可以使用Null空值表示属性
车队 M (1,10) 聘用 N (1,1) N M 教师 (0,3) 讲授 (1,5) 课程
司机
6.4 E-R 模型的扩充
依赖联系和弱联系 1、依赖联系 、
在联系中,一个实体的存在必须以另一个实体的存在为前提。 在联系中,一个实体的存在必须以另一个实体的存在为前提。 例如:电话实体依赖于使用的人(员工)而有存在的意义。 例如:电话实体依赖于使用的人(员工)而有存在的意义。
E6.5 E-R 模型的实例介绍
请同学们看教材,P142[例6.9] 请同学们看教材, 例 问题:以图书借阅管理系统的设计E-R模型 问题:以图书借阅管理系统的设计 模型 1、确定实体类型:借阅人、书籍、出版社、管理员 、确定实体类型:借阅人、书籍、出版社、 2、确定联系类型:五个联系: 、确定联系类型:五个联系:
6.3 联系的设计方法
联系的元数(度数):是指它涉及的实体集的数目, 联系的元数(度数):是指它涉及的实体集的数目, ):是指它涉及的实体集的数目
一元联系(又称递归联系):同一实体集内部实体之间联系。 一元联系(又称递归联系):同一实体集内部实体之间联系。 ):同一实体集内部实体之间联系 二元联系:两个不同实体集实体之间的联系。 二元联系:两个不同实体集实体之间的联系。 三元联系:三个不同实体集实体之间的联系。 三元联系:三个不同实体集实体之间的联系。