参考资料-数据库设计与ER图

合集下载

数据库ER图模型

数据库ER图模型

A
10
基本E-R图要点
码在E-R图中的表示
实体集属性中作为主码的一部分的属性用下划线 来标明
姓名 学号 系别 课程名 先修课 学分 Nhomakorabea学生
选修
A
课程
11
基本概念
参与(Participation)
实体集之间的关联称为参与,即实体参与联系 如王军选修“数据库基础”,表示实体“王军”与 “数
据库基础”参与了联系“选修” 如果实体集E中的每个实体都参与到联系集R中的
A
40
弱实体集
还款号 还款金额 还款日期
贷款号 贷款金额
还款
隶属
贷款
还款的所有属性都不能作为主码
A
41
弱实体集
还款号 贷款号 还款金额 贷款号 贷款金额
还款金额 还款
隶属
贷款
贷款号冗余
A
42
还款号
弱实体集
还款金额
贷款号 贷款金额
还款日期
贷款
支付
账户
还款概念消失了
还款会和帐户发生支付联系
A
43
弱实体集
A
5
基本概念
实体型(Entity Type)
实体名与其属性名集合共同构成实体型 例,学生(学号、姓名、年龄、性别、系、年级) 注意实体型与实体(值)之间的区别,后者是前
者的一个特例 如(9808100,王平,21,男,计算机系,2)是一
个实体
实体集(Entity Set)
同型实体的集合称为实体集 如全体学生
教师
班主任
学生
A
27
联系的种类
多对多 E1中的一个实体与E2中n(n≥0)个实体相联系, 并且E2中的一个实体与E1中m(m≥0)一个实体相 联系

数据库设计及ER图

数据库设计及ER图

数据库设计及ER图1.数据库设计流程数据库作为数据的一个容器,不但对程序的performance有很大的影响,而且对应用程序的扩展有非常大的影响.所以对应用程序来说,一个具有良好设计的数据库是非常重要的.那么如何才能设计出性能好,又支持扩展的数据库呢?这是我们大家都要去探索的问题.现在有很多版本的数据库设计的流程.然而这也只是目前阶段能设计出一个比较好的数据库的一个途径.更好更优的数据库设计流程是我们追求的目标.但是现在,我们先来了解下目前阶段标准的数据库设计流程.以助于我们在开发应用程序的时候能用到.先来看下一张数据设计流程图上图是数据库设计一个比较标准的流程图.我们就针对这个流程来讲解数据库设计各个阶段.需求分析阶段1我们在需求阶段注意两点:1:考虑到可能的扩充和修改,是设计能易于修改和扩展2:强调客户参与:目的有几个:更好的理解客户的需求,了解客户的对程序安全性和完整性的要求,以及用户的处理需求.概念结构设计阶段在这个阶段我们要设计出能真实反应客观事物的模型,同时让设计的模型能易于理解,易于扩展,能方便的向其他数据库转移.逻辑结构设计1:作为对象信息的属性,必须具有原子性的.也就是.我们在画ER图的时候,对象间的关系必须是实体之间的关系,不能是属性和实体的关系.2:确定数据之间的依赖关系(要极小化出来各个关系,消除冗余),同时要按照数据依赖理论对关系模型进行检查.数据库物理设计阶段数据的存储结构以及配置数据库实施阶段定义数据库的结构,数据的装载,以及数据库的试运行.数据库运行和维护阶段要注意数据的转储和恢复,数据库的安全性和完整性控制.数据库的性能的监督,分析和改造以及数据库的重构2.数据库设计范式第一范式(1NF):在关系模式R中的每一个具体关系r中,如果每个属性值都是不可再分的最小数据单位,则称R是第一范式的关系。

例:如职工号,姓名,电话号码组成一个表(一个人可能有一个办公室电话和一个家里电话号码)规范成为1NF有三种方法:一是重复存储职工号和姓名。

第七章-数据库设计与E-R模型

第七章-数据库设计与E-R模型

例:学生选修课程
姓名
学号
系别
用椭圆表示实 体的属性
课程名 先修课
学分
用无向边 学生 m 选修 n 课程
把实体与
其属性连
联系的
接起来
数量
用矩形表示实
成绩
将参与联系的实 体用线段连接
体集,在框内 写上实体名
用菱形表示实 体间的联系
2021/8/14
7
逻辑模型设计
学生=(学号,姓名,系别) 课程=(课程名,先修课,学分) 选修=(学号,课程名,成绩)
2021/8/14
44
映射的基数
若customer与account之间是m:n联系,access-date则必须 作为联系集depositor的属性
2021/8/14
45
映射的基数
One-To- One
One-To-Many
2021/8/14
46
映射的基数
Many-To-One
Many-To-Many
实体型 实体名和属性名组成实体型。对关系模型
就是关系模式。例如,
学生(学号,姓名,性别,年龄,系别,入学 时间),是学生实体型。 (98080221,王平,女,19,计算机,1998) 是一个实体。
2021/8/14
12
基本概念--实体
customer-id
customername
customerstreet
2021/8/14
1
引子
现计划为某大学设计一个教室管理信息系 统,管理的内容包括教室、班级、教师、 学生、课程、教学设备、教室管理员。请 按你的理解完成以下要求。
画出E-R图,转换成关系模式, 根据关系模式,用关系代数写出以下查询:

第二章_数据库设计和ER图(2)

第二章_数据库设计和ER图(2)
根据应用情况将 易变部分与稳定部分分开存放 存取频率较高部分与存取频率较低部分,分开存放
确定数据的存放位置(续)
例:
可以将比较大的表分别放在两个磁盘上,以加快存取 速度,这在多用户环境下特别有效
可以将日志文件与数据库对象(表、索引等)放在不 同的磁盘以改进系统的性能
数据库的物理设计(续)
义属性班(级号可,能平同均成名绩也) 可能不同名),并适当调 合并为整一属个性关的系模次式序:。
学生(学号,姓名,性别,出生日期,所在系, 年级,班级号,平均成绩)
42.某旅行社管理系统涉及的部分信息如下:. (1)景点:景点编号、景点名称、地点、景点描述。 (2)线路:线路编号、线路名称、线路描述。 (3)导游:工号、姓名、等级。 (4)团队:团队编号、人数、开始日期、截止日期。 其中:每条线路由多个景点组成,不同线路的景点存在交叉;
转换内容
将E-R图转换为关系模型:将实体、实体的属性和 实体之间的联系转换为关系模式。
E-R图 向 关系模型的转换
转换过程中的主要问题:
E-R图: 实体 实体的属性 实体间的联系
关系模式: 关系 属性 码
例:
学生
例:学号 系别
学生(学号,姓名,出
学号 学生
姓名
n
年级
生日期,所在系,年级,
所在系选修(学平号均,成绩课)程号,成绩)
(1)根据以上叙述,建立ER模型,要求标注联系类型(可省略实体 的属性)。
(2)根据转换规则,将ER模型转换成关系模型,要求标注每个关系 模型的主键和外键(如果存在)。
41.为体育部门建立数据库,其中包含如下信息: (1)运动队:队名、主教练,其中队名惟一标识运动队。 (2)运动员:运动员编号、姓名、性别、年龄。 (3)运动项目:项目编号、项目名、所属类别。 其中:每个运动队有多名运动员,每名运动员只属于一个运动队; 每名运动员可以参加

数据库设计ER图

数据库设计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页
概念结构(续)

数据库设计与ER模型

数据库设计与ER模型

ER模型的作用和意义
帮助数据库设计者更好地 理解和管理复杂的数据结 构。
有助于确保数据库设计的 完整性和准确性,减少数 据冗余和不一致性。
ABCD
提供了一种通用的、标准 化的数据库设计方法,使 得不同人员之间能够更好 地沟通和协作。
为后续的数据库实施和应 用程序开发提供了基础和 指导。
03
ER模型的设计过程
数据库设计的重要性
提高数据管理效率
良好的数据库设计能够减少数据 冗余,优化数据存储和检索过程, 提高数据管理效率。
保障数据质量
合理的数据库设计可以降低数据 错误和异常的可能性,保证数据 的准确性和完整性。
支持业务决策
通过合理的数据组织和分析,数 据库设计能够支持业务决策,帮 助企业做出更好的战略规划。
创建视图
02
根据业务需求,创建视图以简化复杂的查询或展示特定的数据
汇总信息。
优化查询性能
03
通过优化查询语句和索引设计,提高数据库的查询性能和响应
速度。
05
ER模型的应用案例
案例一:学生信息管理系统
总结词
简明扼要地描述了案例的主要内容。
详细描述
学生信息管理系统是一个典型的ER模型应 用案例。通过ER模型,可以清晰地定义学 生、课程、成绩等实体以及它们之间的关系, 如学生选课、成绩录入等。这有助于确保数 据库设计的准确性和高效性,从而为学生和 教师提供更好的信息服务。
总结词
简明扼要地描述了案例的主要内容。
详细描述
电子商务网站数据库设计是ER模型应用的 另一个重要领域。电子商务网站通常包含商 品、用户、订单等实体以及它们之间的关系 ,如用户购买商品、订单与商品的关联等。
通过ER模型,可以合理规划数据库结构, 确保数据的准确性和完整性,从而提升电子

第七章 数据库设计--ER图·设计

第七章 数据库设计--ER图·设计
学生 m 选课
n
教师
n
课程
三个实体型之间的多对多关系
2.2.1 基本概念
(8)弱实体集: 在描述实体的过程中,有些实体集的属性可能 不足以形成主码,需要依赖其他实体集中的部分 属性。这样的实体集叫做弱实体集,不需要依赖 其他的实体的实体集称为强实体集。 例如一个单位的员工实体集Employee与工作履 历实体集Career,则工作履历实体集Career是以 职工存在为前提的,即工作履历实体集Career是 弱实体集。
2.2.2 E-R图设计----ER图实例
实体之间的联系如下: • 一个仓库可以存放多种零件,一种零件可以存 放在多个仓库中,某种零件在某个仓库中的数 量用库存量描述。 仓库:零件- m : n • 一个仓库有多个职工当仓库保管员,一个职工 只能在一个仓库工作。 仓库:职工-1:n • 职工之间具有领导被领导的关系,即仓库主任 领导若干保管员。职工实体集之间-1:n • 一个供应商可以供给若干项目多种零件,每个 项目可以使用不同供应商供应的零件,每种零 件可由不同供应商供给。 供应商:项目:零件- m : n :p
2.2.2 E-R图设计----ER图实例
【例2.2】某工厂有若干车间及仓库,一个车间可以 生产多种零件,每种零件只能在一个车间生产, 一种零件可以组装在不同产品中,一种产品需要 多种零件,每种零件和产品都只能存放在一个仓 库中;车间有工人,工人有家属。 各实体的属性为: 车间:车间号、车间主任姓名、地址和电话; 工人:工号、姓名、年龄、性别、工种; 工厂:工厂名、厂长名; 产品:产品号、产品名、价格; 零件:零件号、零件规格、价格; 仓库:仓库号、仓库负责人、电话; 家属:姓名、亲属关系。
领导
2.2.2 E-R图设计----ER图实例

数据库设计与实现-基础ER图

数据库设计与实现-基础ER图
ER图(实体-关系图)是数据库设计的 基础工具,用于描述数据结构、数据 关系和数据操作。
数据库设计的重要性
数据库设计是信息系统开发的关键环节,它决定了数据存储和检索的效率,以及 数据的一致性、完整性和安全性。
良好的数据库设计可以提高应用程序的性能、可维护性和可扩展性,同时降低开 发和维护成本。
数据库设计的重要性
数据完整性的考虑
总结词
数据完整性是ER图设计的重要考虑因素,需要确保数据的准确性和一致性。
详细描述
在ER图设计中,需要考虑数据完整性,包括实体完整性、参照完整性和用户自定义完整性。例如,可 以通过设置主键、外键等约束来保证数据的准确性和一致性。同时,也可以通过触发器、存储过程等 方式来实现更复杂的数据完整性要求。
定义关系属性
当两个实体之间存在关系时,可能需 要定义关系的属性。这些属性描述了 关系的特征。在ER图中,关系属性通 常表示为菱形,并标注属性名称。
数据完整性的实现
实体完整性
实体完整性是指确保每个实体的唯一性。在ER图中,通过为主键添加下划线来标识主键 ,确保每个实体在数据库中具有唯一的标识符。
参照完整性
03
ER图在数据库设计中的应用
03
ER图在数据库设计中的应用
确定实体类型
确定实体类型
在ER图中,首先需要确定实体类型 ,即数据库中的表。实体类型通常表 示为矩形,并标注实体类型的名称。
识别实体属性
每个实体类型都有一组属性,这些属 性描述了实体的特征。在ER图中,实 体类型的属性通常表示为实体的椭圆 ,并标注属性名称。
每个人都会有中间名。
06
如何将ER图转化为数据库模式
06
如何将ER图转化为数据库模式

数据库设计与实现基础ER图

数据库设计与实现基础ER图

5 August 2021
10
2.2.2联系和实体的关系
实体和联系的关系
– 实体参与联系,扮演角色
– 一般地,扮演的角色是明确的,不需要显式指明
同型实体间的联系
– 同型实体间可以有联系 – 称作自环联系(recursive) 项目

职工

– 联系扮演的角色需要指明
领导
领 员工 导


管ቤተ መጻሕፍቲ ባይዱ


供应商
– 工厂内有多个车间,每个车间有车间号、车间地址 和电话,一个车间有一名车间主任,多名职工,一 个职工不能同时属于多个车间;
– 一个车间生产多种产品,产品有产品号和价格 – 一个产品由多种零件组成,一种零件也可以参与装
8
2.2.1主码
主码
– 多候选码时,选择一个候选码,作为主码
– 一个实体集中任两个实体在主码上的取值不能相同 – 在E-R图中,主码使用下划线表示 – 多候选码时,一般选变化少的或习惯上的候选码作
为主码 – 主码一旦选择,整个组织有效
dno
dname
院系
sno name 学生
cno cname 课程
5 August 2021
age
pid
9
2.2.2联系的概念
联系

DB
– 多个实体之间的关联关系

DS
– 如:选课联系
联系实例

OS


– 一个具体的多个实体间的相互关系
– 如:(甲,DS),(甲,OS),(乙,DS)…
联系集
– 同类型联系的集合
– {(甲,DS)(甲,OS)(乙,DS)…}

数据库设计——ER图

数据库设计——ER图

数据库设计——ER图 E-R图也称实体—联系图,提供了表⽰实体类型、属性和联系的⽅法⽤来描述现实世界的概念模型。

它是描述现实世界关系概念模型的有效⽅法。

是表⽰概念关系模型的⼀种⽅式。

⽤“矩形框”表⽰实体型,矩形框内写明实体名称;⽤“椭圆图框”或圆⾓矩形表⽰实体的属性,并⽤“实⼼线段”将其与相应关系的“实体型”连接起来;⽤“菱形框”表⽰实体型之间的联系成因,在菱形框内写明联系名,并⽤“实⼼线段”分别与有关实体型连接起来,同时在“实⼼线段”旁标上联系的类型(1:1,1:n或m:n)。

构成E-R图的3个基本要素是实体型、属性和联系,其表⽰⽅法为: 实体:⼀般认为,客观上可以相互区分的事情就是实体,实体可以是具体的⼈和物,也可以是抽象的概念与联系。

关键在于⼀个实体能与另⼀个实体相区别,具有相同属性的实体具有相同的特征和性质。

⽤实体名及其属性名集合来抽象和刻画同类实体。

在E-R图中⽤矩形表⽰,矩形框内写明实体名;⽐如学⽣张三、学⽣李四都是实体。

如果是弱实体的话,在矩形外⾯再套实线矩形。

属性:实体所具有的某⼀特性,⼀个实体可由若⼲个属性来刻画。

属性不能脱离实体,属性是相对实体⽽⾔的。

在E-R图中⽤椭圆形表⽰,并⽤⽆向边将其与相应的实体连接起来;⽐如学⽣的姓名、学号、性别、都是属性。

如果是多值属性的话,在椭圆形外⾯再套实线椭圆。

如果是派⽣属性则⽤虚线椭圆表⽰。

联系:联系也称关系,信息世界中反映实体内部或实体之间的关联。

实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。

在E-R图中⽤菱形表⽰,菱形框内写明联系名,并⽤⽆向边分别与有关实体连接起来,同时在⽆向边旁标上联系的类型(1 : 1,1 : n或m : n)。

⽐如⽼师给学⽣授课存在授课关系,学⽣选课存在选课关系。

如果是弱实体的联系则在菱形外⾯再套菱形。

⼀般性约束 实体-联系数据模型中的联系型,存在3种⼀般性约束:⼀对⼀约束(联系)、⼀对多约束(联系)和多对多约束(联系),它们⽤来描述实体集之间的数量约束: (1)⼀对⼀联系(1:1):对于两个实体集A和B,若A中的每⼀个值在B中⾄多有⼀个实体值与之对应,反之亦然,则称实体集A和B 具有⼀对⼀的联系。

数据库设计之 E-R 图

数据库设计之 E-R 图
数据库设计之 E-R图
课程解决问题

什么是E-R图? 什么时候使用? 怎么用?
数据库设计
数据库设计是从用户对 数据的需求出发,研究 并构造数据库的过程

设计步骤:
需求分析 实体定义 概念设计 关系定义 属性分配
E-R图
设计的目标

实现设计
满足应用功能的需求 良好的数据库性能
物理设计
实现、维护
员工
姓名 属于
实体-关系模型
在 E-R 图中显示的每个特性或属性映射为相应 表中的一个属性 员工
地址 名字
出生日期
工号 名字 出生日期 地址 邮编 电话 学历
员工
代号 工号 邮编 邮编 电话 电话 学历 学历
实体-关系模型
关系:实体间的关联
例如, 供应商和客户的关系中。这种关系代表了一个供 应商可以有多客户,一个客户也可以选择多个供应商。这 个关系被称为“选择”。
经理
部门 部门号(pk) 部门名 经理
员工 员工号(pk) 员工名 电话 部门(FK)
外键:当一个表的主关键字作为属性出现在另一个表中则在第二个表中称为外键(用于联系实体)
转换原则:多对多
把两实体中的主关键字放入到一个新实体中,成为新实体 的组合键 客户编号 客户名 商品编号 商品名 客户编号商品编号
客户
m
销售
m
商品
地址
联系方式 帐号 购买日期 数量 价格
库存量
对应数据库表
客户编号
C01 C02 C03 C04 C05
客户表
地址
北京 武汉 武汉 上海 武汉
顾客名
李明 王华 孙庆 赵国强 陈洁
联系方式

数据库设计-ER图

数据库设计-ER图

数据库设计的基本步骤(1)需求分析阶段:需求收集和分析,得到数据字典和数据流图。

(2)概念结构设计阶段:对用户需求综合、归纳与抽象,形成概念模型,用E-R图表示。

(3)逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型。

(4)数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构。

(5)数据库实施阶段:建立数据库,编制与调试应用程序,组织数据入库,程序试运行。

(6)数据库运行和维护阶段:对数据库系统进行评价、调整与修改。

1 数据库设计概述数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据。

数据库设计的基本步骤:∙需求分析∙概念结构设计∙逻辑结构设计∙物理结构设计∙数据库的建立和测试∙数据库运行和维护。

数据库各阶段设计描述2 概念结构设计在早期的数据库设计,在需求分析阶段后,就直接进行逻辑结构设计。

由于此时既要考虑现实世界信息的联系与特征,又要满足特定的数据库系统的约束要求,因而对于客观世界的描述受到一定的限制。

同时,由于设计时要同时考虑多方面的问题,也使设计工作变得十分复杂。

1976年P.P.S.Chen提出在逻辑结构设计之前先设计一个概念模型,并提出了数据库设计的实体--联系方法(Entity--Relationship Approach)。

这种方法不包括深的理论,但提供了一个简便、有效的方法,目前成为数据库设计中通用的工具。

有许多商业软件支持E-R模型,如Sybase公司的PowerDesigner DataArchitect(最新版本v9.5.1 for Windows)、微软公司Microsoft InfoModeler (VisioModeler)等。

图 S-designer DataArchitect 5.1 设计的E-R模型使用E-R模型来进行概念模型的设计通常分两步进行,首先是建立局部概念模型,然后综合局部概念模型,成为全局概念模型。

MySQL中的数据库设计和ER图的使用技巧

MySQL中的数据库设计和ER图的使用技巧

MySQL中的数据库设计和ER图的使用技巧引言在当今信息时代,数据库的设计变得愈发重要。

MySQL作为最流行的开源关系型数据库管理系统之一,被广泛应用于众多网站和应用程序中。

在进行数据库设计时,ER图(实体关系图)是一个非常有用的工具,它能够帮助开发者更好地理解和规划数据结构。

本文将探讨MySQL数据库设计的关键概念和技巧,并详细介绍ER图的使用方法。

数据库设计的关键概念1. 概念模型在进行数据库设计之前,我们需要根据实际业务需求构建一个概念模型。

概念模型是对现实世界中的实体及其相互关系的抽象。

它包括实体、属性和关系三个核心元素。

2. 实体实体是现实世界中独立存在并可辨识的事物,比如用户、订单、产品等。

在数据库中,每个实体对应一个表。

3. 属性属性是实体具有的特征或性质。

每个实体可能有多个属性,比如用户实体可能有姓名、年龄、性别等属性。

在数据库中,每个属性对应一个字段。

4. 关系关系是实体之间的联系。

关系可以是一对一、一对多或多对多的。

比如用户和订单之间的关系可能是一对多的,一个用户可以拥有多个订单。

MySQL数据库设计技巧规范化是数据库设计中的关键步骤,可以避免数据冗余和数据不一致性的问题。

规范化的目标是将数据结构合理地分解成多个关系,并消除冗余数据。

常用的规范化级别有1NF、2NF、3NF等。

在实际设计中,通常应该在能满足需求的前提下尽可能地达到第三范式。

2. 主键和外键主键是用来唯一标识实体的属性,它的值在整个表中必须唯一。

在MySQL中,通常使用自增长的整数作为主键。

外键是一个表中的字段,它引用了另一个表中的主键。

外键能够建立实体之间的关联,保证数据的完整性和一致性。

3. 索引索引是用来加速对表的查询操作的。

在设计数据库时,合理地选择和创建索引是非常重要的。

通常应该为频繁用于查询条件的字段创建索引,这样可以加快查询的速度。

然而,过多地创建索引也会降低插入和更新操作的性能,因此需要权衡利弊。

数据库设计与实现高级ER图[文字可编辑]

数据库设计与实现高级ER图[文字可编辑]

2019 年11月12 日星期二
数据库系统概念----E-R
10
3.1练习
? 请绘制医院系统住院部分的E-R图
– 医院为住院病人建立病历。病历首页记录病人住院相关的基本 信息;病历主体由住院期间每次诊疗的记录顺序排列组成。
– 诊疗记录由诊疗时间、诊疗情况记录组成,并要由进行当次诊 疗的住院医生签字。诊疗可发出检查单、治疗医嘱单,需要记 录诊疗和检查单、医嘱单的关系。
dealnum
银行职员
2019 年11月12 日星期二
数据库系统概念----E-R
3
3.1弱实体
? 弱实体提出的背景 – 存在一些场景,需要研究:
? 一个实体的属性与其它实体之间的关系 ? 或者属性之间相互的关联关系
– E-R图中联系是实体与实体之间的联系 – 在研究属性参与的联系时,需要进行属性实体化
? 思考:
科研成果
ISA
不相交
文章
项目
– 教师、学生对人员的ISA关系,具有不相交约束吗?
2019 年11月12 日星期二
21
2.2练习
? 学校系统数据概念模型如图下所示
– 现在需要增加在校人员的借书业务 – 请尝试使用在校人员和教师学生的继承关系
院系 dno dname
name sno
age pid
讲授
课程
? 思考:
– 如何刻画不同层次实体型之间的关系?
2019 年11月12 日星期二
13
3.2继承
? ISA联系
– E-R图使用ISA联系表示不同层次实体型之间的关系 – ISA联系本质是继承关系 – ISA联系使用标有“ISA”字样的三角形来表示
人员
ISA
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。


软件生存期
从软件的规划、研制、实现、投入运行后的维护,直到它被 新的软件所取代而停止使用的整个期间。

数据库工程 数据库系统生存期 数据库设计的输入输出
隶属关系
数据库应用系统从开始规划、设计、实现、维护到最后被新 的系统取代而停止使用的整个期间。

软件生存期
数据库生存期
规划 需求分析 系统设计
5.4 ER模型到关系模型的转换 5.5 ER模型实例分析 5.6 ER模型的扩充 小结


5.3.1 ER模型概述

什么是ER模型 ER模型的历史 ER模型的基本元素

ER模型图例
实体
联系 属性


职号 姓名 性别 职称

实体 联系 属性 例子
学号 姓名 学 生 专业 班级
老 师
m

n
5.3.2 属性的分类


将原来的多值属性用几个新的 单值属性来表示。 将原来的多值属性用一个新的 规格 实体类型表示 供应商
零件名
1 零件
N 图5.4 地址属性的层次结构 职工 存在 零 件
销售价格
图5.8 导出属性的表示 图5.6 多值属性的变换(1) 进货价格 图5.7 多值属性的变换(2) 销售价格价 格

导出属性 零件编码 零件编码 空值
图5.12 三元联系中的M:N:P联系
5.3.4 ER模型的操作
包括实体类型、联系类型和属性的分裂、合并、增删等等
教师号 教师
A
姓名
B
出生日期 1
职务
教师
A
工资 M
B
奖金
M
主讲
A-C B-C
教师
主讲
辅导
(a)
A-B-C
教师号 N 课程
姓名
出生日期
教师号
职务 N
工资 课程
N 奖金
教师不变信息 (a)(b)
合并两个局部ER模式
结构冲突 :同一对象在不 同应用中的不同抽象 ;同 一实体在不同局部ER图中 属性的个数或次序不同 ; 实体之间的联系在不同的 局部ER图中呈现不同的类 型
命名冲突 :属性名、实体 名、联系名之间存在同名 异义或异名同义冲突
检查并消除冲突
还有冲突吗

还有未合 并的局部 模式 无



存储记录结构设计 确定数据存放位置 存取方法的设计 完整性和安全性考虑 程序设计
5.2.6 数据库的实现

目标 实现数据库应做的主要工作

组织数据入库;

对数据量不大的小型系统(人工)
主要工作:筛选数据;转换数据格式;输入数据;校验数据。

对大中型系统(自动)
主要工作:筛选数据;输入数据;校验数据;换数据;综合 数据。

供应商 经销价格 省(市) 奖金 基本属性和复合属性(可否再分) 基本工资 区 名 名 代销价格 邮政编码 街 道 零件名 供应商 姓名 单值属性和多值属性(对一个实 房租 批发价格 零件名 规格 体对象是否只能取一个值) 零件编码 售货价格 销售性质价 零售价格 实发工资 进货价格地 址 格 工号 零件编码 多值属性的处理 规格 进货价格 家庭地址 门牌号码
转换 内模式
映像
图5.2 数据库的各级模式
5.2.4 逻辑设计
返回到前面阶段
概念模式
导出初始DBMS模式说明

目标 逻辑设计步骤
子模式设计
应用程序设计草图
模式评价

处理结 束 否

模式修正
模式需要修 正

进入物理设计阶段
图5.3 逻辑设计步骤
5.2.5 物理设计

目标 什么是数据库的物理结构 物理设计的步骤
局部模式
现有的教学 管理系统 初步分析系 统的对象
根据服务种 类分析教师 子模块
……
局部ER图
其他局部模式
现有的教学 管理系统
初步分析系 统的对象
根据服务种 类分析学生 子模块
……
局部ER图 系
1

N
班级
1
1
管 理 指 导 住 宿
1
1
班主任
导师
组 成
N
N
N
档案材料
N
归 档 具 有
1
学生
1 M
1
宿舍

编制与调试应用程序; 数据库试运行。

功能测试 性能测试(时空代价)
5.2.7 数据库的运行与维护工作

数据库的转储和恢复 数据库安全性、完整性控制 数据库性能的监督、分析和改进 数据库的重组织和重构造
主要内容

5.1 数据库设计概述 5.2 数据库设计的全过程 5.3 ER模型

分析系统数据,产生数据字典
5.2.3 概念设计


目标 为什么需要概念设计 概念设计的主要步骤


进行数据抽象,设计局部概念模式 将局部概念模式综合成全局概念模式 评审
应用1 概念要求
应用1 外模式1
应用2 外模式2
应用3 外模式3
应用2 概念要求 概念模式 逻辑模式
映像
应用3 概念要求 综合
N
参 加
N
社会关系
学会
其他局部模式
现有的教学 管理系统
初步分析系 统的对象 根据服务种 类分析课程 子模块
……
局部ER图
1
N
N
MN

开设
课程
M
选修
学生
1
上课
1
担任
P
N
教室 教科书 教师
5.3.5 采用ER方法的数据库概念设计 之设计全局 ER模式
局部ER模式
确定公共实体类型
属性冲突 :如,重量单位 有的用公斤,有的用克。
图5.20全局ER模式设计
5.3.5 采用ER方法的数据库概念设计 之全局ER模式的优化

实体类型的合并

1:1联系的两个实体类型 具有相同键的实体类型

冗余属性的消除 冗余联系的消除:利用
规范化理论中函数依赖的概 念消除冗余联系
例子:三个局部ER图合并成一个ER图
院长
1
主管
1
学院
1
教师
确定局部结构范围
实体定义
联系定义
属性分配
结构复杂,不便分析 当多个实体类型用到同一属性时, 一般把属性分配给那些使用频率最高 的实体类型,或分配给实体值少的实 体类型。
有些属性不宜归属于任一实体类 型,只说明实体之间联系的特性
有 还有局部 结构待分 析 无 进入全局ER模式设计
图5.18 局部ER模式设计
5.5 ER模型实例分析 5.6 ER模型的扩充 小结


5.4.1 ER图转换成关系模式集的 规则


将每个实体类型转换成一个关系模式,实体的属性即为关系模 式的属性,实体标识符即为关系模式的键 二元联系类型的转换



若实体间联系是1:1,可以在两个实体类型转换成的两个关系模式中任意 一个关系模式的属性中加入另一个关系模式的键和联系类型的属性。 若实体间联系是1:N,则在N端实体类型转换成的关系模式中加入1端实体 类型的键和联系类型的属性。 若实体间联系是M:N,则将联系类型也转换成关系模式,其属性为两端实 体类型的键加上联系类型的属性,而键为两端实体键的组合

一元联系类型的转换:同二元联系 三元联系类型的转换
总是将三元联系类型转换成关系模式,其属性为三端实体类型的键加上联 系类型的属性,而键为三端实体键的组合。
ER模型到关系模型的转换实例
运动员(编号,姓名,性别,名次, 上一名次编号,下一名次编号) 职工(工号,姓名,年龄,性别,经理工号)
工号 编号 姓名 性别 名次
C
教师变动信息 (b) 图5.15 实体类型的垂直分裂 图5.16 联系类型的分裂
C
(a) 图5.17 不合法的合并
(b)
5.3.5 采用ER方法的数据库概念设计
之设计局部ER模式
需求分析结果
范围的划分要自然, 易于管理; 采用人们习惯的划分; 确定属性的原则: 避免冗余,在一个局部结 范围之间的界面要清晰, 属性应该是不可再分解的语义 构中,对一个对象只取一 相互影响要小 单位;实体与属性之间的关系只能 种抽象形式,不要重复; 是1:N的;不同实体类型的属性之间 范围的大小要适度。太小 应无直接关联关系。 依据用户的信息处理需求 了,会造成局部结构过多, 设计过程繁琐,综合困难; 太大了,则容易造成内部 属性分配的原则:
修,最少可以没人选修 零件号 零件名
编号 学生 姓名 仓库 性别 规格 名次

联系的元数
一个联系涉及到的实体集个数
工号
姓名 年龄 零件M M (1,6)
运动员 职工 选课 进货
性别
数量

联系的连通词
联系涉及到的实体集之间实体对应的方式
M 1 N 商店 数量 1
N 日期 N 1
N (0,50) 组成 课程 领导 顺序
数量
零件
M N N
进货
日期
P
商店
组成 数量
商品
商店号
商店名
商品号
商品名
5.4.2 采用ER方法的逻辑设计步骤
处理需求 ER模式 DBMS特征
从ER模式导出 初始数据库模式 关系模式规范化 模式评价
模式修正

是否需要修正

用DBMS语法描述
相关文档
最新文档