数据库ER图设计PPT课件
合集下载
2数据库设计与实现-基础ER图.ppt
– 实体的概念
– 实体的属性
– 实体的标识
2.2.2联系
– 联系的概念
– 联系和实体的关系
– 联系的度
– 联系的属性
– 二元联系的基数
基础E-R练习
2019年11月5日星期二
5
2.2.1实体的概念
实体: 可以相互区分的事物
– 事物:事件、物体、概念 – 学生:甲、乙、丙… – 课程:DB、DS、SE…
– m:n不对联系产生约束
院长
– 1:m,m:1,1:1是联系的约束
2019年11月5日星期二
16
2.2.2二元联系的基数表示方式
A
多方实体集
R
B
联系R从A到B是一 单方实体集 对一或多对一
A
R
B
联系R从A到B是多对 多或一对多
2.2.2二元联系的基数表示方式-示例
甲 85 DB
乙
DS
丙 80 OS
丁
…
2019年11月5日星期二
数据库系统概念----E-R
13
2.2.2联系的属性
联系属性
– 属性是描述性属性
sno name
学生
score
学习
属
cno cname
课程
下述内容,不是联系的属性
甲 85 DB
乙
DS
丙 80 OS
丁
…
– 实体参与联系的数目
– 参与联系的实体的属性(包括实体的主码)
age
pid
cno cname 课程
2019年11月5日星期二
7
2.2.1实体的标识属性
标识属性的必要性
sno name
数据库ER图设计PPT课件
-
7
教学进度
No Image
计算机科学与工程系
(5) 实体型:用实体名和属性名称集来描述同 类实体。
如:学生(学号,姓名,年龄,性别)就是一个 实体型。所有学生都可用这一实体型进行描述。
2. 联系与联系集
两个或两个以上的实体集间的关联关系的描述。
如:系与系主任、班级与班长(1:1关系) ;系与 教研室、班级与学生(1:n关系) ;学生与课程、教师 与课程(m:n关系) 。
-
24
教学进度
No Image
计算机科学与工程系
(1) 1NF:若一个关系模式R的所有属性都是不可再分 的基本数据项,则该关系模式属于1NF。
例如:教师关系表如下,判断是否为第一范式,并规范 教师关系。
教师关系
修改后的教师关系
联系电话 教师编号 姓名 系别
联系电话1 联系电话2
95010 张乐 经济 1234
学院(学院编号,学院名称,院长姓名,学院电话,学 院地址)
学院编号
学院名称 院长姓名 学院电话 学院地址
学院
-
15
教学进度
No Image
计算机科学与工程系
② 一个1:1联系可以转换为一个独立的关系模式, 也可以与任意一端对应的关系模式合并。
举例:两个实体:一对一联系
系
1
拥有 1
系主任
系编号 系名字 系性质 联系 工号
12345678
95011 赵希明 经济 2345
23456789
95012 李小平 经济 3456
34567890
…
……
…
…
教师编号 姓名 系别 联系电话1 联系电话2
95010 95011 95012
数据库关系er模型图ppt课件
一条横线。
ppt精选版
36
将ER模型转换成关系数据库 一般规则:
(1) 将每一个实体类型转换成一个关系模式,实 体的属性为关系模式的属性。
(2) 对于二元联系,按各种情况处理,如下面所 示。
ppt精选版
37
ER图
转换成 联系的处理 的关系
外键
(2个 处理方式(1):(1) 方式(1):
关系) 把模式B的主键,联系 模式B的主键
ppt精选版
21
数据模型
在数据库中用数据模型这个工具来抽象、表示和处理 现实世界中的数据和信息。通俗地讲数据模型就是现实世界 的模拟。
数据模型应满足三方面要求: 能比较真实地模拟现实世界 容易为人所理解 便于在计算机上实现
ppt精选版
22
数据模型的组成要素
数据结构
数据结构是所研究的对象类型的集合。规定了如何把 基本的数据项组织成较大的数据单位,以描述数据的的类 型、内容、性质和数据之间的相互关系。
模式A 的属性加入模式A
为模式A外键
模式B 处理方式(2):
方式(2):
(2)把模式A的主键, 表A的主键为 联系的属性加入模式B 表B的外键
ppt精选版
38
ER图
转换成 联系的处理 的关系
外键
(2个 把模式A的主键,联系 模式A的主键
关系) 的属性加入模式B
为模式B的外
模式A
键
模式B
ppt精选版
输入计算机后,经存储、传送、排序、计算、转换、检索、 制表及仿真等操作,输出人们需要的结果,即产生信息。
ppt精选版
4
数据库(DataBase,简称DB)
所谓数据库是长期存储在计算机内、有组织的、 可共享的数据集合、数据库中的数据按一定的数据 模型组织、描述和存储,具有较小的冗余度、较高 的数据独立性和易扩展性,并可为各种用户共享。
ppt精选版
36
将ER模型转换成关系数据库 一般规则:
(1) 将每一个实体类型转换成一个关系模式,实 体的属性为关系模式的属性。
(2) 对于二元联系,按各种情况处理,如下面所 示。
ppt精选版
37
ER图
转换成 联系的处理 的关系
外键
(2个 处理方式(1):(1) 方式(1):
关系) 把模式B的主键,联系 模式B的主键
ppt精选版
21
数据模型
在数据库中用数据模型这个工具来抽象、表示和处理 现实世界中的数据和信息。通俗地讲数据模型就是现实世界 的模拟。
数据模型应满足三方面要求: 能比较真实地模拟现实世界 容易为人所理解 便于在计算机上实现
ppt精选版
22
数据模型的组成要素
数据结构
数据结构是所研究的对象类型的集合。规定了如何把 基本的数据项组织成较大的数据单位,以描述数据的的类 型、内容、性质和数据之间的相互关系。
模式A 的属性加入模式A
为模式A外键
模式B 处理方式(2):
方式(2):
(2)把模式A的主键, 表A的主键为 联系的属性加入模式B 表B的外键
ppt精选版
38
ER图
转换成 联系的处理 的关系
外键
(2个 把模式A的主键,联系 模式A的主键
关系) 的属性加入模式B
为模式B的外
模式A
键
模式B
ppt精选版
输入计算机后,经存储、传送、排序、计算、转换、检索、 制表及仿真等操作,输出人们需要的结果,即产生信息。
ppt精选版
4
数据库(DataBase,简称DB)
所谓数据库是长期存储在计算机内、有组织的、 可共享的数据集合、数据库中的数据按一定的数据 模型组织、描述和存储,具有较小的冗余度、较高 的数据独立性和易扩展性,并可为各种用户共享。
数据库设计ER图
第19页/共72页
数据抽象(续)
聚集
第20页/共72页
数据抽象(续) ▪ 复杂的聚集,某一类型的成分仍是一个聚集
更复杂的聚集
第21页/共72页
数据抽象(续)
3. 概括(Generalization) • 定义类型之间的一种子集联系 • 抽象了类型之间的“is subset of”的语义 • 继承性
分E-R图
合并
初步E-R图
可能存在冗余的数据 和冗余的实体间联系
消除不必要的冗余
基本E-R图
第53页/共72页
消除不必要的冗余,设计基本E-R图(续)
• 冗余 • 消除冗余的方法
第54页/共72页
1.冗余
• 冗余的数据是指可由基本数据导出的数据 冗余的联系是指可由其他联系导出的联系
• 冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难 • 消除不必要的冗余后的初步E-R图称为基本E-R图
该厂劳动人事管理分E-R图
图7.29 劳动人事管理的分E-R图
第66页/共72页
消除冗余,设计生成基本E-R图实例(续)
系统的基本E-R(图7.30)
某工厂管第理6信7页息/共系7统2页的基本E-R图
消除冗余,设计生成基本E-R图实例(续)
集成过程,解决了以下问题: • 异名同义,项目和产品含义相同 • 库存管理中职工与仓库的工作关系已包含在劳动人事管理的部门与职工之
联系 • 整体概念结构能满足需要分析阶段所确定的所有要求
• 概念结构设计是整个数据库设计的关键
第3页/共72页
概念结构(续)
现实世界 信息世界 机器世界
需求分析 概念结构设计
第4页/共72页
概念结构(续)
数据抽象(续)
聚集
第20页/共72页
数据抽象(续) ▪ 复杂的聚集,某一类型的成分仍是一个聚集
更复杂的聚集
第21页/共72页
数据抽象(续)
3. 概括(Generalization) • 定义类型之间的一种子集联系 • 抽象了类型之间的“is subset of”的语义 • 继承性
分E-R图
合并
初步E-R图
可能存在冗余的数据 和冗余的实体间联系
消除不必要的冗余
基本E-R图
第53页/共72页
消除不必要的冗余,设计基本E-R图(续)
• 冗余 • 消除冗余的方法
第54页/共72页
1.冗余
• 冗余的数据是指可由基本数据导出的数据 冗余的联系是指可由其他联系导出的联系
• 冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难 • 消除不必要的冗余后的初步E-R图称为基本E-R图
该厂劳动人事管理分E-R图
图7.29 劳动人事管理的分E-R图
第66页/共72页
消除冗余,设计生成基本E-R图实例(续)
系统的基本E-R(图7.30)
某工厂管第理6信7页息/共系7统2页的基本E-R图
消除冗余,设计生成基本E-R图实例(续)
集成过程,解决了以下问题: • 异名同义,项目和产品含义相同 • 库存管理中职工与仓库的工作关系已包含在劳动人事管理的部门与职工之
联系 • 整体概念结构能满足需要分析阶段所确定的所有要求
• 概念结构设计是整个数据库设计的关键
第3页/共72页
概念结构(续)
现实世界 信息世界 机器世界
需求分析 概念结构设计
第4页/共72页
概念结构(续)
数据库设计与实现-高级ER图.ppt
m
n
m
1
1
1
课程
学习
学生
隶属
院系
管理
院长
具体选择哪个符号体系由项目组决定
2019年4月24日星期三
数据库系统概念----E-R
31
3.4E-R图的符号体系
比较与思考
– 两种基数约束表示方法各有哪些优缺点? – 你更喜欢哪一种表示方法? ①
课程
学习
学生
可以和银行之间建立担保联系 银行
担保
客户
订购
项目
思考:如果不使用聚集,如何用E-R图表示?
2019年4月24日星期三
数据库系统概念----E-R
28
3.3聚集
不使用聚集,E-R图的两种表示方案
银行
银行
担保
客户
全部
全部
隶
订购合约
关
属
于
项目
客户
担保 订购
订购
项目
方案一:联系实体化
方案二:看作两种不同的订购
约束吗?
2019年4月24日星期三
20
3.2不相交约束
ISA联系的相交性分类
–相交(重叠)
同一实体可以同时属于一个父类的多个不同子类
相交不是对ISA关系的约束,不需要在E-R图上标明
–不相交
科研成果
一个实体至多属于一个子类 不相交是对ISA关系的约束 不相交约束应在E-R图上予以标明
属
课程 cno cname
tno 2019年4月24日星期三
23
2.2练习
学校系统增加借书业务后的概念模型
– 参考方案(二)
pid name
ER图ppt课件
25
2. 参照完整性规则
参照完整性规则是一个表的外键值可以为空值。若不为空 值,则必须等于另一个表中主键的某个值。
外键(Foreign Key,FK):若一个表R1中的一个列或列 组对应另一个表R2的主键,那么该列或列组称为表R1的 外键。
外键可以由一个或多个列组成,可以有重复值。 以产品,订单,订单明细为例,演示外键的使用 查阅功能的进一步演示
实体完整性规则是表中任意一行的主键值不能为空值。 空值,用“null”表示,大小写一样。空值是尚未确定的
值或不确定的值。如Enrollment表中的Grade值。 空值和数值型列的0值以及字符型列的空字符串的不同,
数值型列的0值与字符型列的空字符串都是确定的值。
23
根据主键的定义,主键值必须惟一。 因此,实体完整性也可定义为:
产品(产品ID,产品名称,单位数量,单价,库 存量,订购量,再订购量,中止)
订单明细(订单ID,产品ID,单价,数量,折扣)
21
完整性规则
完整性规则包括实体完整性规则、参照完整性规 则和用户自定义完整性规则三大类。
实体完整性和参照完整性是关系模型必须满足的 两个完整性规则。
22
1. 实体完整性规则
第二部分
关系数据库表间联系
1
本章要点
联系 E-R图 E-R图转换为关系模式 完整性规则
2
为什么要使用联系
现实世界中,事物内部以及事物之间是有联系的, 这些联系在信息世界反映为实体内部的联系和实 体之间的联系。
3
什么是联系
联系是指实体之间的相互关联
4
联系的类型
一对一关系
一对多关系 多对多关系
2. 参照完整性规则
参照完整性规则是一个表的外键值可以为空值。若不为空 值,则必须等于另一个表中主键的某个值。
外键(Foreign Key,FK):若一个表R1中的一个列或列 组对应另一个表R2的主键,那么该列或列组称为表R1的 外键。
外键可以由一个或多个列组成,可以有重复值。 以产品,订单,订单明细为例,演示外键的使用 查阅功能的进一步演示
实体完整性规则是表中任意一行的主键值不能为空值。 空值,用“null”表示,大小写一样。空值是尚未确定的
值或不确定的值。如Enrollment表中的Grade值。 空值和数值型列的0值以及字符型列的空字符串的不同,
数值型列的0值与字符型列的空字符串都是确定的值。
23
根据主键的定义,主键值必须惟一。 因此,实体完整性也可定义为:
产品(产品ID,产品名称,单位数量,单价,库 存量,订购量,再订购量,中止)
订单明细(订单ID,产品ID,单价,数量,折扣)
21
完整性规则
完整性规则包括实体完整性规则、参照完整性规 则和用户自定义完整性规则三大类。
实体完整性和参照完整性是关系模型必须满足的 两个完整性规则。
22
1. 实体完整性规则
第二部分
关系数据库表间联系
1
本章要点
联系 E-R图 E-R图转换为关系模式 完整性规则
2
为什么要使用联系
现实世界中,事物内部以及事物之间是有联系的, 这些联系在信息世界反映为实体内部的联系和实 体之间的联系。
3
什么是联系
联系是指实体之间的相互关联
4
联系的类型
一对一关系
一对多关系 多对多关系
ER图绘制PPT课件
教师:属性有教师号、姓名、性别、职称、专业 课程:属性有课程号、课程名、学时数、专业 联系: 一个学生可以选多门课 一门课可以由多个学生选修 一个教师可以教多门课 一门课也可以由多个老师教 学生选修某门课有一个成绩 教师教某门课有一个质量评价。
.
14
财务处涉及到的实体及实体之间的联系如下:
教师:属性有教师号、姓名、性别、职称、专业 工资:属性有基本工资、加班工资、扣税、工资编号 联系: 一个教师只能领一份工资 一份工资只能由一个教师领 领工资时应注明是某月工资。
.
10
解:描述教师和课程之间的E-R图可如下图所示。
教师号 课程号
教师名
教师 m
讲授 n
课程 课程名
.
职称
质量
班级
11
E—R图的设计方法
E-R图通常都应经过以下两个阶段:
(1)针对每一用户画出该用户信息的局部E—R图,确定该用户视图的 实体、属性和联系。需注意的是:能作为属性的就不要作为实体,这 有利于E—R图的简化。 (2)综合局部E—R图,生成总体E—R图。在综合过程中,同名实体 只能出现一次,还要去掉不必要的联系,以便消除冗余。一般来说, 从总体E—R图必须能导出原来的所有局部视图,包括实体、属性和 联系。 【例 4 】某学校管理系统中有三个部门:后勤部、学生处和财务处。 后勤部用来管理学生的住宿;教务处用来管理学生选课和教师任课; 财务处用来管理发放教师的工资。
2.实体间不同联系情况的E-R图表示法
联系分为:一对一(1:1)、一对多(1:n)、多对多(m:n)
【例1 】假设某学院有若干个系,每个系只有一个主任。主任和系之间是一 对一的关系。
主任和系的属性分别如下: 主任——编号,姓名,年龄,学历; 系——系编号,系名
.
14
财务处涉及到的实体及实体之间的联系如下:
教师:属性有教师号、姓名、性别、职称、专业 工资:属性有基本工资、加班工资、扣税、工资编号 联系: 一个教师只能领一份工资 一份工资只能由一个教师领 领工资时应注明是某月工资。
.
10
解:描述教师和课程之间的E-R图可如下图所示。
教师号 课程号
教师名
教师 m
讲授 n
课程 课程名
.
职称
质量
班级
11
E—R图的设计方法
E-R图通常都应经过以下两个阶段:
(1)针对每一用户画出该用户信息的局部E—R图,确定该用户视图的 实体、属性和联系。需注意的是:能作为属性的就不要作为实体,这 有利于E—R图的简化。 (2)综合局部E—R图,生成总体E—R图。在综合过程中,同名实体 只能出现一次,还要去掉不必要的联系,以便消除冗余。一般来说, 从总体E—R图必须能导出原来的所有局部视图,包括实体、属性和 联系。 【例 4 】某学校管理系统中有三个部门:后勤部、学生处和财务处。 后勤部用来管理学生的住宿;教务处用来管理学生选课和教师任课; 财务处用来管理发放教师的工资。
2.实体间不同联系情况的E-R图表示法
联系分为:一对一(1:1)、一对多(1:n)、多对多(m:n)
【例1 】假设某学院有若干个系,每个系只有一个主任。主任和系之间是一 对一的关系。
主任和系的属性分别如下: 主任——编号,姓名,年龄,学历; 系——系编号,系名
数据库设计 - C2 - E-R图和表.pptx
绘制E-R图 • E-R(Entity-Relationship)实体关系图
符合 含义 实体,一般是名词
属性,一般是名词
关系,一般是动词
概念模型 • 联系分为:一对一(1:1)、一对多(1:n)、多对 多(m:n)
【例1 】两个实体集之间的一对一的联系的绘制方法。 假设某学院有若干个系,每个系只有一个主任。则 主任和系之间是一对一的关系。 主任和系的属性分别如下: 主任——编号,姓名,年龄,学历; 系——系编号,系名 主任和系之间是一个管理关系
• 需求分析阶段:分析客户的业务和数据处理需求; • 概要设计阶段:设计数据库的E-R模型图,确认需求信息的正确和完 整; • 详细设计阶段:将E-R图转换为多张表,进行逻辑设计,并应用数据 库设计的三大范式进行审核; • 代码编写阶段:选择具体数据库进行物理实现,并编写 代码实现前端应用; • 软件测试阶段:…… • 安装部署:……
BuyerID Country City
1 1 4 2 … 中国 中国 日本 美国 … 北京 北京 东京 纽约 …
• 第一范式的目标是确保每列的原子性
• 如果每列都是不可再分的最小数据单元(也称为最小的原 子单元),则满足第一范式(1NF)
第二范式 (2nd NF)
Orders
字 段 例 子 Orders 字 段 例 子 订单编号 001 订购日期 2000-2-3 Products 字 段 例 子
数据库系统分析的基本步骤-标识对象间关系2 • 标识对象之间的关系(Relationship)
• 跟贴和主贴有主从关系:我们需要在跟贴对象中表明 它是谁的跟贴; • 版块和用户有关系:从用户对象中可以根据版块对象 查出对应的版主用户的情况; • 主贴和版块有主从关系:需要表明发贴是属于哪个版 块的; • 跟贴和版块有主从关系:需要表明跟贴是属于哪个版 块的;
数据库设计(共38张PPT)
法为:
可将“一方”实体的主关键字纳入“n方”实体转换后
的数据表中作为“外部关键字”,同时把关系的属性也一并
其中。
一对多中的关系转换为数据表
学号
姓名
年龄
性别
N
学生
班级(班级编号、班级名称)
属于
学生(学号、姓名、性别、年龄、班级编 号)
班级
1
编号
名称
多对多的关系转换为数据表
如果实体A和实体B之间是多对多的关系,必须按以下 原则转换化数据表:
第二范式
第二范式是在第一范式的基础上,确保表中的每列都 和主键相关。即要求一个表只描述一件事情。
职工信息
工程信息
劳资信息
第二范式
工程信息
职工信息 劳资信息
第三范式
第三范式是在第二范式的基础上,确保表中每列都 和主键直接相关,而不是间接相关。间接相关又称 为传递依赖。
假设数据表中A、B、C三列,如果A->B,而B->C,则
1. 必须对“关系”单独建立一个数据表。
2. 该数据表的属性中至少要包括实体A和实体B的主关键字作为
外键,并且如果关系有属性,也要归入这个关系中。
多对多的关系转换为数据表
学号
姓名
年龄
性别
学生
学生(学号、姓名、性别、年龄)
N
选课
课程(课程号、名称、课时、学分)
N
选课(编号、学号、课程号)
课程
课程号
名称
ID编号列,它没有实际含义,用于做主键。 例如:通知数据表中除了标题、内容外,还应加一个ID主键列 ,用以区分每条记录。
3. 如果实体之间有某种关系,还要在表中添加外键。
学生选课系统中各实体转换为数 据表
可将“一方”实体的主关键字纳入“n方”实体转换后
的数据表中作为“外部关键字”,同时把关系的属性也一并
其中。
一对多中的关系转换为数据表
学号
姓名
年龄
性别
N
学生
班级(班级编号、班级名称)
属于
学生(学号、姓名、性别、年龄、班级编 号)
班级
1
编号
名称
多对多的关系转换为数据表
如果实体A和实体B之间是多对多的关系,必须按以下 原则转换化数据表:
第二范式
第二范式是在第一范式的基础上,确保表中的每列都 和主键相关。即要求一个表只描述一件事情。
职工信息
工程信息
劳资信息
第二范式
工程信息
职工信息 劳资信息
第三范式
第三范式是在第二范式的基础上,确保表中每列都 和主键直接相关,而不是间接相关。间接相关又称 为传递依赖。
假设数据表中A、B、C三列,如果A->B,而B->C,则
1. 必须对“关系”单独建立一个数据表。
2. 该数据表的属性中至少要包括实体A和实体B的主关键字作为
外键,并且如果关系有属性,也要归入这个关系中。
多对多的关系转换为数据表
学号
姓名
年龄
性别
学生
学生(学号、姓名、性别、年龄)
N
选课
课程(课程号、名称、课时、学分)
N
选课(编号、学号、课程号)
课程
课程号
名称
ID编号列,它没有实际含义,用于做主键。 例如:通知数据表中除了标题、内容外,还应加一个ID主键列 ,用以区分每条记录。
3. 如果实体之间有某种关系,还要在表中添加外键。
学生选课系统中各实体转换为数 据表
数据库E-R图讲解ppt课件
职工
1
n
领导
单个实体型内部 1:n联系
13
+ 2.1 基本概念 + 2.2 E-R图 + 2.3 一个简单的综合示例
14
+ E-R图概念模型的表示工具 + 实体-联系方法(E-R方法)
– 用E-R图来描述现实世界的概念模型 – E-R方法也称为E-R模型
15
+ 1.E-R图的组成要素 符号
含义
28
+ 实体:研究所,研究室,研究人员,项目 + 联系:
– 研究所,研究室之间联系 – 研究室,研究人员间联系 – 研究人员,项目之间联系
29
研究所
研究所编号 <pi> <M> 研究所名 地址
包含
研究室
研究室编号 <pi> <M> 研究室名 办公地点
有
研究员
编号 <pi> <M> 0,n 姓名 性别 年龄
参与 工作量
是否需要研究所到科研项目间联系? 工作量 是放在实体上还是联系上?
科研项目
项目号
<pi> <M>
0,n
项目名 开工时间
项目负责人
30
+ 优点
– 简单,容易理解,真实反应用户需求; – 与计算机无关,用户容易接受。
+ 遇到实际问题一般先设计一个ER模型,然 后把ER模型转换成计算机能实现的数据模 型——逻辑数据模型。
37
为什么要讨论实体之间的联系?
仓库号 WH1 WH2 WH3 WH4
城市 北京 上海 广州 重庆
面积 500 450 200 300
数据库建模ER模型PPT课件
和不能存取哪些部分? 完整的数据库设计是不可能一蹴而就的, 它往往是上述6个步骤的不断反复的过程!
第11页/共88页
需求分析 概念设计
逻辑设计 模式求精
物理设计
应用与安全设计
第12页/共88页
本章内容
第五章 第七章 第九章
目录
4.1 数据库设计过程
4.2 E-R模型基本概念及表示
4.3 约束
4.6 E-R建模问题
以及一次订货、借书、选课、存款或取款等业务产生的单据。 • 但是,二者都应是组织或第机14页构/共“88感页 兴趣”的事物。
属性
• 属性是实体集中每个实体都具有的特征描述。 • 一实体集中所有实体都具有相同的属性。
• 例如,学生实体集中的每个实体都具有: 学号、姓名、性别、出生日期、年 龄、所学专业、电话号码、家庭住址、所在班级等属性。
所在班级
家庭住址
省份
城市
街道
学生
家庭电话
移动电话 宿舍电话 实验室电话
图4-4 学生实体集中的多值属性转换为多个单值属性表示
第24页/共88页
联系与联系集
联系(relationship)是指多个实体间的相互关联,例 如学生李小勇选修了数据库系统原理课程。
联系集是学生同类联系的集选合课。
课程
形式化地说,联系集是n (n≥2)个实体集上的数学
第29页/共88页
一对一联系(1:1)
实体集A中的每一个实体,若实体集B中
至多只有一个实体与之联系,反之亦然,则
称实体集A与B是一对一的联系,记作1:1。
A
B
A1
B1
A2
B2
A3
B3
A4
B4
第30页/共88页
第11页/共88页
需求分析 概念设计
逻辑设计 模式求精
物理设计
应用与安全设计
第12页/共88页
本章内容
第五章 第七章 第九章
目录
4.1 数据库设计过程
4.2 E-R模型基本概念及表示
4.3 约束
4.6 E-R建模问题
以及一次订货、借书、选课、存款或取款等业务产生的单据。 • 但是,二者都应是组织或第机14页构/共“88感页 兴趣”的事物。
属性
• 属性是实体集中每个实体都具有的特征描述。 • 一实体集中所有实体都具有相同的属性。
• 例如,学生实体集中的每个实体都具有: 学号、姓名、性别、出生日期、年 龄、所学专业、电话号码、家庭住址、所在班级等属性。
所在班级
家庭住址
省份
城市
街道
学生
家庭电话
移动电话 宿舍电话 实验室电话
图4-4 学生实体集中的多值属性转换为多个单值属性表示
第24页/共88页
联系与联系集
联系(relationship)是指多个实体间的相互关联,例 如学生李小勇选修了数据库系统原理课程。
联系集是学生同类联系的集选合课。
课程
形式化地说,联系集是n (n≥2)个实体集上的数学
第29页/共88页
一对一联系(1:1)
实体集A中的每一个实体,若实体集B中
至多只有一个实体与之联系,反之亦然,则
称实体集A与B是一对一的联系,记作1:1。
A
B
A1
B1
A2
B2
A3
B3
A4
B4
第30页/共88页
E-R图绘制ppt课件
数据模型
6)联系(Relationship):在现实世界中,事物内部及事物之间是普遍 联系的,这些联系在信息世界中表现为实体型内部各属性之间的联 系以及实体型之间的联系。两个实体型之间的联系可以分为三类: ①一对一联系(1:1) 例如,如果一个商品只卖给一个顾客,一个顾客也只能购买一个商 品,则商品与顾客之间具有一对一的联系。 ②一对多联系(1:n) 例如,一个人可以有多个移动电话号码,但一个电话号码只能卖给 一个人。人与移动电话号码之间的联系就是一对多的联系。 ③多对多联系(m:n) 例如,一门课程同时可以由若干学生选修,而一个学生同时也可以 选修若干门课程,课程与学生之间的联系是多对多的联系。
事、物,也可以是抽象的概念和联系。 2)属性(Attribute):具有的某一特性称为实体的属性,一个实体有 若干个属性来描述。 3)域(Domain):属性的取值范围称为该属性的域。 4)实体型(Entity Type):具有相同属性的实体成为同型实体,用实 体名及其属性名的集合来抽象和刻画同类实体,称为实体型。 5)实体集(Entity Set):同型实体的集合称为实体集。
仓库和商品的属性分别如下: 仓库——仓库号,地点,面积 商品——商品号,商品名,价格
在存放联系中要反映出存放商品的数量。
解:描述仓库和商品之间的E-R图可如下图所示
仓库号 商品号
地点
仓库
1
存放 n
商品
商品名
面积 数量
价格
【例 3】两个实体集之间的多对多的联系的绘制方法。
假设在某教务管理系统中,一个教师可以上多门课,一门课也 可以由多个老师去上。教师和课程之间是多对多的联系。 教师和课程可用以下属性来描述: 教师——教师号,教师名,职称 课程——课程号,课程名 在“讲授”联系中应能反映出教师的授课质量。
数据库ER图模型PPT课件
零件则是三元联系
.
7
基本概念
码(Key)
能唯一标识实体的属性或属性组称作超码
超码的任意超集也是超码
其任意真子集都不能成为超码的最小超码称为候 选码
从所有候选码中选定一个用来区别同一实体集中 的不同实体,称作主码
一个实体集中任意两个实体在主码上的取值不能 相同
如学号是学生实体的码
通讯录(姓名,邮编,地址,电话,Email,BP)
.
4
基本概念
实体(Entity)
客观存在并可相互区分的事物叫实体
如学生张三、工人李四、计算机系、数据库概论
属性(Attribute)
实体所具有的某一特性
一个实体可以由若干个属性来刻画
例如,学生可由学号、姓名、年龄、系等组成
域(Domain)
属性的取值范围
例如,性别的域为(男、女),月份的域为1到 12的整数
.
46
弱实体集
弱实体集与存在依赖
弱实体集必然存在依赖于强实体集(Strong Entity Set)
存在依赖并不总会导致一个弱实体集,从属实体 集可以有自己的主码
如实体集信用卡(信用卡号,客户帐号,金额), 它存在依赖于客户帐号实体集,但信用卡有自己 的主码信用卡号
.
47
弱实体集
分辨符(Discriminator)
如电话号码=区号+本地号码 出生日=年+月+日
学生
1NF Vs 嵌套关系
姓名
年龄
区号
本地号码
.
17
属性的类型
单值属性
每一个特定的实体在该属性上的取值唯一 如学生的学号,年龄、性别、系别等
多值属性
某个特定的实体在该属性上的有多于一个的取值 如学生(学号,所选课程,联系电话)
.
7
基本概念
码(Key)
能唯一标识实体的属性或属性组称作超码
超码的任意超集也是超码
其任意真子集都不能成为超码的最小超码称为候 选码
从所有候选码中选定一个用来区别同一实体集中 的不同实体,称作主码
一个实体集中任意两个实体在主码上的取值不能 相同
如学号是学生实体的码
通讯录(姓名,邮编,地址,电话,Email,BP)
.
4
基本概念
实体(Entity)
客观存在并可相互区分的事物叫实体
如学生张三、工人李四、计算机系、数据库概论
属性(Attribute)
实体所具有的某一特性
一个实体可以由若干个属性来刻画
例如,学生可由学号、姓名、年龄、系等组成
域(Domain)
属性的取值范围
例如,性别的域为(男、女),月份的域为1到 12的整数
.
46
弱实体集
弱实体集与存在依赖
弱实体集必然存在依赖于强实体集(Strong Entity Set)
存在依赖并不总会导致一个弱实体集,从属实体 集可以有自己的主码
如实体集信用卡(信用卡号,客户帐号,金额), 它存在依赖于客户帐号实体集,但信用卡有自己 的主码信用卡号
.
47
弱实体集
分辨符(Discriminator)
如电话号码=区号+本地号码 出生日=年+月+日
学生
1NF Vs 嵌套关系
姓名
年龄
区号
本地号码
.
17
属性的类型
单值属性
每一个特定的实体在该属性上的取值唯一 如学生的学号,年龄、性别、系别等
多值属性
某个特定的实体在该属性上的有多于一个的取值 如学生(学号,所选课程,联系电话)
ER模型实际实例ppt课件
合并后的教学管理E-R图
整理ppt
22
例1 库存销售信息管理系统的ER 模型及转换
M 车 间
N
仓 位
M
M
入
存
出
库
储
库
P
P
N
产
品
订
M
单
库存系统ER图
实体
N客 户
车间(车间号,车间名,主任名) 产品(产品号,产品名,单价) 仓位(仓位号,地址,主任名) 客户(客户号,客户名,联系人,电话,
地址,税号,账号)
局部ER模式
确定公共实体类型
属性冲突 :如,重量单位 有的用公斤,有的用克。
结构冲突 :同一对象在不 同应用中的不同抽象 ;同 一实体在不同局部ER图中 属性的个数或次序不同 ; 实体之间的联系在不同的 局部ER图中呈现不同的类 型
命名冲突 :属性名、实体 名、联系名之间存在同名 异义或异名同义冲突
27
本章总结
主要内容
基本概念 映射基数
一对一,一对多,多对多
弱实体集 扩展ER特性
特殊化,一般化
ER模型设计要点 概念数据库设计过程 E-R模型向关系模式的转换
学生应掌握的内容
基本概念,E-R模型的各组成成分,数据库的概念设计,E-R模型向 关系模式的转换
整理ppt
28
整理ppt
23
例2:公司车队信息系统的ER模型
部门 M
调用
N 车队 1
聘用
N 司机 N
拥有
保险1
N 开销
报销
1N
N
车辆
N
保险2
1
1
保险公司
维修
1 维修公司
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
-
7
教学进度
No Image
计算机科学与工程系
(5) 实体型:用实体名和属性名称集来描述同 类实体。
如:学生(学号,姓名,年龄,性别)就是一个 实体型。所有学生都可用这一实体型进行描述。
2. 联系与联系集
两个或两个以上的实体集间的关联关系的描述。
如:系与系主任、班级与班长(1:1关系) ;系与 教研室、班级与学生(1:n关系) ;学生与课程、教师 与课程(m:n关系) 。
应用A 应用B 应用C 应用D 应用E
外模式1
外模式2
外模式3
逻辑模式 物理模式
磁盘
-
说明:逻辑模式 与外模式是一对 多的关系;逻辑 模式与物理模式 是一对一的关系。
2
教学进度
5.1 数据库设计概述
No Image
计算机科学与工程系
• 数据库设计步骤
数据库的设计过程可分为六个阶段:
1. 需求分析
需求分析
例如:
学院编号
学院名称 院长姓名 学院电话 学院地址
学院
学院实体集的E-R图 -
9
教学进度
No Image
计算机科学与工程系
例如:教师与班级、学院与系和班级、学生 和课程实体集之间联系的E-R图。
教师 1 班主任
学院 1 设置
学生 m
选课
1 班级
n 系 1
设置
n 班级
n 课程
-
10
教学进度
No Image
实体集之间的联系分一对一(1:1)、一对多(1:n)
、多对多(m:n)3种。
-
8
教学进度
No Image
计算机科学与工程系
E-R图 E-R模型(概念模型的描述方法) ,是用实体-联系 图(简称E-R图)来描述的,是通过图形描述实体集、 实体属性和实体集之间联系的图形。 实体集—矩形框 属性—椭圆框 联系—菱形框
籍贯
学生
M
选课
nn
课程
M 教师
索引类型 主索引
外键
教师编号 姓名 性别 职务
课程编号
课程名
学时
学分
No Image
计算机科学与工程系
字段名 学号 姓名 性别 出生年月 籍贯 班级编号
字段名 学号
课程编号
教师编号
成绩
学生-选课(1:n)
字段类型 字符型 字符型 字符型 日期/时间型
字符型
字符型
字段长度 6 6 2
现实世界
概念模型
将现实世界客观存在的事物及 其相互间联系通过符号记录下 来抽象为信息世界。
-
5
教学进度
No Image
计算机科学与工程系
1. 实体及相关概念
(1) 实体:客观存在并相互区别的事物。 实体可以是可触及的对象,如一个学生,一本 书,一辆汽车;也可以是抽象的事件,如一堂课, 一次比赛等。 (2) 属性:实体所具有的特征和性质。 如:学生实体有学号、姓名、年龄、性别等。
安全性要求:只允许学院内部人员使用该系统,允许学生 查询成绩但不能修改,允许教师录入和修改学生成绩等。
-
4
教学进度
5.3 概念结构设计
No Image
计算机科学与工程系
概念设计的目标是产生反映需求信息的数据库 概念结构,它与具体的DBMS无关。从现实世界到 概念模型的转换是由数据库设计人员完成的,概念 设计用实体-联系模型(简称E-R图) 表示。在E-R模 型中,用于描述数据的概念主要有实体、属性、实 体型、实体集、关键字及实体之间的联系等。
短日期 50
8
小数点
选课
字段类型 字段长度
字符型
6
小数点
字符型
5
字符型
7
数值型 单精度Biblioteka 2索引类型 主索引
外键
索引类型 普通索引 普通索引 普通索引
字段名 课程编号
课程名 学时 学分
课程-选课(1:n)
字段类型 字符型 字符型 数值型 数值型
字段长度 5 12
短整型 短整型
小数点 0
索引类型 主索引
-
11
教学进度
多对多关系实际上是某两个表 与第三个表的两个一对多关系,第 三个表的主键包含两个字段,分别 是前两个表的主键。
字段名 教师编号
姓名 性别 职务 教研号室编
教师-选课(1:n)
字段类型 字符型 字符型 字符型 字符型
字段长度 7 6 2 8
小数点
字符型
6
姓名
性别
出生年月
学号
此图为 3个表 与 第 4 成绩 个表的 联系。
-
6
教学进度
No Image
计算机科学与工程系
(3) 码:在实体的属性当中能够唯一的标识一 个实体的属性称为这个实体的关键字,也称码或键。
如:学生的学号。而学生的姓名可能有重名, 不能作为学生实体的关键字(码)。
(4) 实体集:具有相同属性的同一类事物,是 一个实体的集合。
如:所有的学生信息记录、所有的课程信息 记录等。
例如:建立“学生信息管理系统”,目的是对学院、系、 班级、教研室等部门的信息进行管理,还要管理教师和学生的 基本信息,以及学生选课的情况。
信息要求:系统涉及到学院、系、教研室、教师、学生、 班级、课程、选课等各方面的信息。
处理要求:增加、删除、修改各数据对象中的数据,各类 查询、统计及报表打印等等。
计算机科学与工程系
例如:学生、教师和课程三个实体共同参与了 一个选课联系,一般称这种由三类实体参与的联系 为三元联系。因为某教师选定一门课讲授,学生选 中同一门课要学习时,三者才会联系起来。
姓名
性别
出生年月
学号 成绩
籍贯
学生
m
选课
m 教师
nn
课程
教师编号 姓名 性别 职务
课程编号
课程名
学时
学分
教师、学生与课- 程的E-R图
第6章 数据库设计
No Image
计算机科学与工程系
数据库设计是开发数据库应用系统的关 键。简单地讲数据库设计就是创建数据库系 统的管理对象。
本章以学生信息管理系统为例,讲解数 据库设计的有关内容。
-
1
教学进度
5.1 数据库设计概述
No Image
计算机科学与工程系
• 数据库设计方法 主要是设计数据库系统结构中的三级模式结构。
12
教学进度
学院编号
班级编 号
班级名 班长姓
名 专业 系编号
学生编 号 姓名 性别
出生年 月 籍贯
班级编 号
学院名称
院长姓 名
学院电话
学院地址
No Image
计算机科学与工程系
系名称 系编号
学院
1 设置
n
系 1
系主任 学院编
号
1
设置 n
班级
1
成绩
设置 n
2. 概念结构设计阶段 3. 逻辑结构设计阶段
概念结构设计阶段
4. 物理结构设计阶段
逻辑结构设计阶段
5. 数据库实施 6. 数据库运行与维护
物理结构设计阶段 数据库实施
数据库运行维护
-
3
教学进度
5.2 需求分析
No Image
计算机科学与工程系
需求分析是数据库设计的第一步。这一阶段主要是对数据 库应用系统所要处理的对象进行全面了解,了解用户需求,收 集信息,提出问题及解决问题的思路。