数据库系统教程——施伯乐第三版PPT5

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
12
5.1.4 逻辑设计阶段(1)
●概念设计的结果是得到一个与DBMS无关
的概念模型。 ●而逻辑设计的目的是把概念设计阶段设 计好的概念模型转换成与选用的具体机器 上的DBMS所支持的数据模型相符合的逻辑 结构(包括数据库逻辑模型和外模型)。 ●对于逻辑设计而言,应首先选择DBMS, 但往往数据库设计人员没有挑选的余地, 都是在指定的DBMS上进行逻辑结构的设计。
18
5.2 ER模型的基本概念
由Professor Peter Chen 于1976年提出的。

5.2.1 5.2.2 5.2.3 5.2.4 5.2.5
ER模型的基本元素 属性的分类 联系的设计 ER模型的操作 采用ER模型的概念设计步骤
19
5.2.1 ER模型的基本元素(1)
9
5.1.3 概念设计阶段(2)
●1.概念设计的重要性 在早期的DBD中,概念设计并不是一个独立的设计 阶段。设计依赖于具体DBMS的逻辑模型,当外界环 境发生变化时,设计结果就难以适应这个变化。 将概念设计从设计过程中独立开来,可以使DBD各 阶段的任务相对单一化,得以有效控制设计的复杂 程度,便于组织管理。 概念模型能充分反映现实世界中实体间的联系,又 是各种基本数据模型的共同基础,同时也容易向现 在普遍使用的关系模型转换。
7
5.1.2 需求分析阶段
●这一阶段是计算机人员(系统分析员)和用户双 方共同收集数据库所需要的信息内容和用户对处理 的需求。并以需求说明书的形式确定下来,作为以 后系统开发的指南和系统验证的依据。 ●需求分析的工作主要由下面四步组成: 1. 分析用户活动,产生业务流程图 2. 确定系统范围,产生系统关联图 3. 分析用户活动涉及的数据,产生数据流图 4. 分析系统数据,产生数据字典 需求分析阶段的有关内容在“软件工程”课程中有 详细的介绍,这里不再详述。
1. 实体 定义5.2 实体、实体集、实体类型的定义如下: · 实体(Entity)是一个数据对象,指应用中可以区别的 客观存在的事物。 · 实体集(Entity Set)是指同一类实体构成的集合。 · 实体类型(Entity Type)是对实体集中实体的定义。 由于实体、实体集、实体类型等概念的区分在转换 成数据库的逻辑设计时才要考虑,因此在不引起混 淆的情况下,我们一般将实体、实体集、实体类型 等概念统称为实体。由此可见,ER模型中提到的实 体往往是指实体集。

21
5.2.1 ER模型的基本元素(3)
3.属性 定义5.4 实体的某一特性称为属性(Attribute)。 在一个实体中,能够惟一标识实体的属性或属性集 称为“实体标识符”。 但一个实体只有一个标识符,没有候选标识符的概 念。实体标识符有时也称为实体的主键。在ER图中, 属性用椭圆形框表示,加下划线的属性为标识符。 实体若干属性的一组特定值,确定了一个特定的实 体,实体的属性值是数据库中存储的主要数据。 联系也会有属性,用于描述联系的特征,如参加工 作时间、入库数量等。但联系本身没有标识符。
11
5.1.3 概念设计阶段(4)
(2) 将局部概念模型综合成全局概念模型 综合各局部概念结构就可得到反映所有用户需 求的全局概念结构。在综合过程中,主要处理各局 部模式对各种对象定义的不一致问题。 (3) 评审 消除了所有冲突后,就可把全局结构提交评审。 评审分为用户评审与DBA及应用开发人员评审两部分。 概念设计中最著名的方法就是实体联系方法(ER 方法),建立ER模型,用ER图表示概念结构,得到 数据库的概念模型。
15
5.1.6 数据库的实现(1)
●数据库实现主要包括以下工作: 1. 定义数据库结构:确定了数据库的逻辑结构与物 理结构后,就可以用所选用的DBMS提供的数据定义 语言(DDL)来严格描述数据库结构。 2. 数据装载 (1) 对于数据量不是很大的小型系统,可以用人工 方法完成数据的入库。 (2) 对于大中型系统,由于数据量极大,用人工方 式组织数据入库将会耗费大量人力物力,而且很难 保证数据的正确性,因此应该设计一个数据输入子 系统,由计算机辅助数据的入库工作。
13
5.1.4 逻辑设计阶段(2)
●逻辑设计的主要步骤有五步:
1.把概念模型转换成逻辑模型 2.设计外模型 3.设计应用程序与数据库的接口 4.评价模型 5.修正模型
14
5.1.5 物理设计阶段
●对于给定的基本数据模型选取一个最适合应 用环境的物理结构的过程,称为物理设计。 ●物理设计可分五步完成,前三步涉及到物理 结构设计,后两步涉及到约束和具体的程序设 计。 ⑴ 存储记录结构设计 ⑵ 确定数据存放位置 ⑶ 存取方法的设计 ⑷ 完整性和安全性考虑 ⑸ 程序设计

3. 存储属性和派生属性
基本工资 奖金 房租 实发工资
姓名
工号 学生
图5.6 派生属性的表示
27
5.2.2 属性的分类(6)
4. 允许为空值的属性 当 实 体 在 某 个 属 性 上 没 有 值 时 应 使 用 空 值 (Null Value)。 譬如某个员工在配偶值处填上空值(Null), 实际上至少有以下三种情况: ●该员工尚未婚配,即配偶值无意义;(这种空 值,称为“占位空值”) ●该员工已婚配,但配偶名尚不知;(这种空值, 称为“未知空值”) ●该员工是否婚配,还不能得知。 在数据库中,空值是很难处理的一种值。

29
5.2.3 联系的设计(2)
2. 联系类型的约束 联系类型的约束限制了参与联系的实体的数目。有两 类联系约束:基数约束和参与约束。 (1)基数约束 下 面 先 定 义 二 元 联 系 的 映 射 基 数 ( Mapping Cardinalities)。 定义5.6 实体集E1和E2之间有二元联系,则参与一 个联系中的实体数目称为映射基数。 对于二元联系类型,可能的映射基数有1:1,1:N, M:N,M:1等四种。由于M:1是1:N的反面,因此通常就 不再提及。1:1,1:N和M:N的定义已在第1章给出。

20
5.2.1 ER模型的基本元素(2)
2. 联系 定义5.3 联系、联系集、联系类型的定义如下: · 联系(Relationship)表示一个或多个实体之间的关 联关系。 · 联系集(Relationship Set)是指同一类联系构成的 集合。 · 联系类型(Relationship Type)是对联系集中联系 的定义。 同实体一样,我们一般将联系、联系集、联系类型 等统称为联系。

规划阶段 需求分析阶段 概念设计阶段 逻辑设计阶段 物理设计阶段 数据库的实现 数据库的运行与维护
4
5.1 数据库系统生存期(2)



为了解决“软件危机”,在1968年首次提出“软 件工程”的概念。软件工程中把软件开发和运营 的全过程称为“软件生存期”(Life Cycle)。 软件生存期是软件工程的一个重要概念。软件生 存期是指从软件的规划、研制、实现、投入运行 后的维护,直到它被新的软件所取代而停止使用 的整个期间。 以数据库为基础的信息系统通常称为数据库应用 系统,它一般具有信息的采集、组织、加工、抽 取、综合和传播等功能。数据库应用系统的开发 是一项软件工程,但又有自己特有的特点,所以 特称为“数据库工程”。
第5章 数据库设计 与ER模型
1
DBD
在具备了DBMS、 OS、系统软件和硬件 环境时,对数据库应用开发人员来说,就 是如何使用这个环境表达用户的要求,构 造最优的数据模型,然后据此建立数据库 及其应用系统,这个过程称为数据库设计 (Database Design,简记为DBD)。

2
第5章 数据库设计与ER模型

22
5.2.2 属性的分类(1)

1. 简单属性和复合属性
路名 省(市)名 区名 街道
门牌号码
邮政编码
地址
图5.2
地址属性的层次结构
23
5.2.2 属性的分类(2)

2. 单值属性和多值属性
供应商
规格
零件名
进货价格 销售价格
零件编码
零件
图5.3
多值属性的表示
24
5.2.2 属性的分类(3)
对多值属性进行变换,通常有下列两种变换方 法: 方法一:把多值属性转换成多个单值属性。
5
5.1 数据库系统生存期(3)



仿照软件生存期,可以得到数据库系统生 存期概念。 定义5.1 我们把数据库应用系统从开始规 划、设计、实现、维护到最后被新的系统 取代而停止使用的整个期间,称为数据库 系统生存期。 这个生存期一般可划分成下面七个阶段: 规划、需求分析、概念设计、逻辑设计、 物理设计、实现、运行维护。
6
5.1.1 规划阶段
●规划阶段具体可分成三个步骤: (1)系统调查。对应用单位作全面的调查。发现其 存在的主要问题,并画出组织层次图,以了解企业的 组织机构。 (2)可行性分析。从技术、经济、效益、法律等诸 方面对建立数据库的可行性进行分析;然后写出可行 性分析报告;组织专家进行讨论其可行性。 (3)确定数据库系统的总目标,并对应用单位的工 作流程进行优化和制订项目开发计划。在得到决策部 门批准后,就正式进入数据库系统的开发工作。

28
5.2.3 联系的设计(1)
1. 联系的元数 定义5.5 一个联系涉及到的实体集个数, 称为该联系的元数或度数(Degree)。 通常,同一个实体集内部实体之间的联系, 称为一元联系,也称为递归联系;两个不 同实体集、实体之间的联系,称为二元联 系;三个不同实体集实体之间的联系,称 为三元联系。以此类推。
10
5.1.3 概念设计阶段(3)
●2. 概念设计的主要步骤 概念设计的任务一般可分为三步来完成:进行 数据抽象,设计局部概念模型;将局部概念模型综 合成全局概念模型;评审。 (1) 进行数据抽象,设计局部概念模型 设计概念结构时,常用的数据抽象方法是“聚 集”和“概括”。聚集是将若干对象和它们之间的 联系组合成一个新的对象。概括是将一组具有某些 共同特性的对象抽象成更高一层意义上的对象。

30
5.2.3 联系的设计(3)
例5.2 二元联系。
校名 地址 学校 1 任职 1 校长 电话 系号 系名 电话
任职年月
系 1 聘用 N 教师
聘期
姓名
性别
年龄
职称
工号
姓名
性别
年龄
图5.7 1:1联系
8
5.1.3 概念设计阶段(1)
●概念设计的目标是产生反映用户单位信息需 求的数据库概念结构,即概念模型。 ●概念模型具有硬件独立、软件独立的特点。
用户1 应用1 应用2 应用3
用户需求
用户2
外模型1 外模型2 外模型3
映像
用户需求
用户3
概念模型
转换
逻辑模型
映像
用户需求
综合
内模型
图1.12 模型间的相互关系
供应商 零件名
零件编码 规格 进货价格 经销价格 代销价格 批发价格 零件
零售价格
图5.4
多值属性的变换(1)
25Hale Waihona Puke Baidu
5.2.2 属性的分类(4)

方法二:把多值属性转换成一个弱实体。
供应商 零件名 规格 进货价格 销售性质
零件编码
售货价格
零件
1
存在
N
销售价格
图5.5
多值属性的变换(2)
26
5.2.2 属性的分类(5)
17
5.1.7 数据库的运行与维护
●对数据库经常性的维护工作主要是由DBA完成的, 它包括以下内容。 1. 数据库的转储和恢复 2. 数据库安全性、完整性控制 3. 数据库性能的监督、分析和改进 4. 数据库的重组织和重构造 ●若应用变化太大,已无法通过重构数据库来满足 新的需求,或重构数据库的代价太大,则表明现有 数据库应用系统的生命周期已经结束,应该重新设 计新的数据库系统,开始新数据库应用系统的生命 周期了。
5.1 数据库系统生存期 5.2 ER模型的基本概念 5.3 ER模型到关系模型的转换 5.4 ER模型实例分析 5.5 增强的ER模型 5.6 小结

3
5.1 数据库系统生存期(1)
5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7
16
5.1.6 数据库的实现(2)
●对于给定的基本数据模型选取一个最适合应 用环境的物理结构的过程,称为物理设计。 ●物理设计可分五步完成,前三步涉及到物理 结构设计,后两步涉及到约束和具体的程序设 计。 ⑴ 存储记录结构设计 ⑵ 确定数据存放位置 ⑶ 存取方法的设计 ⑷ 完整性和安全性考虑 ⑸ 程序设计
相关文档
最新文档