数据库系统的分析与设计

  • 格式:ppt
  • 大小:1.56 MB
  • 文档页数:118

下载文档原格式

  / 118
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
材料
材料号
材料名
价格
仓库
材料
1
存于
n
仓库 电话
材料号
材料名
价格
32
仓库号
仓库名
地址
产品号 产品名 性能
产品 m 组装 零件数 n 零件
零件号
零件名
材料名
耗用量
生产部门的局部E-R图
33
仓库号 仓库名
仓库
1 存储量 产品号 n 产品名 产品 m n 使用 材料 材料名 价格 价格 材料号 地址 电话
22
举例
系号
系名
主任名
学号
姓名
年龄
性别
系 职称 教师名 教师号 课程号
学生
课程名 学分
教师
课程 负责人 名 称
项目号
项 目
实体及其属性图
23
系号
系名
主任名
学号
姓名
年龄
系 1 n 领导 教师号 教师 n 职称 参加 m 项目号 项 目 m n 1 n
学生 n 选修 m 任课 排名 课程号 负责人 名 称 图 1-18 学校教学管理E-R模型
如, “电脑”是一件产品,表示“电脑”是产品中
的一员,他具有产品共同的特性和行为。
28
② 聚集(Aggregation)
聚集是定义某一类型的组成部分,它抽象了对象 内部类型和对象内部“组成部分”的语义。若干 属性的聚集组成了实体型。例如把实体集“产品” 的“产品号”、“产品名”、“价格”、“性能” 等属性聚集为实体型“产品”。
8
6.1.4 数据库设计的工具
1. Oracle公司的Oracle Designer 2. Sybase公司的Power Designer 3. CA公司的ERwin 4.北大青鸟公司的青鸟CASE工具
9
6.2需求分析阶段
需求分析阶段 调查 机构 情况 熟悉 业务 活动 明确 用户 需求 确定 系统 边界 分析 系统 功能 分析 系统 数据 编写 分析 报告 概念 设计 阶段
19
例如:图中表示两个不同实体集之间的联系。
观众 1
V_S
部门 1
D_E
项目 n
PR_E
1 座位 (a)1:1

n 职工 (b)1:n
两个不同实体集之间的联系
20
wenku.baidu.comm 职工 (c)m:n
E-R模型 举例
【例1.1】学校由若干个系,每个系有若 干名教师和学生;每个教师可以担任若 干门课程,并参加多项项目;每个学生 可以同时选修多门课程。请设计某学校 的教学管理的E-R模型,要求给出每个 实体、联系的属性。 解:某学校的教学管理的E-R模型应该 有五个实体:系、教师、学生、项目、 课程。
29
③ 概括(Generalization)
概括定义了类型之间的一种子集联系,它抽象类型之间的 “所属”的语义。例如在电脑工厂中,“产品”是个实体 集,“台式机” 、“笔记本电脑”也是实体集,但“台式
机” 、“笔记本电脑”都是“产品”的子集。我们把“产
品”称为超类(Superclass), “台式机” 、“笔记本电 脑”称为“产品”的子类(Subclass)。 继承性:子类继承超类中定义
逻辑结构设计
概念结构设计步骤
26
6.3.2.1局部视图抽象设计
1.数据抽象
所谓抽象是对实际的人、物、事和概念进行 人为处理,它抽取人们关心的共同特性,忽
略非本质的细节,并把这些特性用各种概念
精确地加以描述,这些概念组成了某种模型。
27
一般有三种数据抽象:分类、聚集和概括。 ① 分类(Classification) 分类定义某一类概念作为现实世界中一组对象的 类型,将一组具有某些共同特性和行为的对象抽象 为一个实体。分类抽象了对象值和型之间是“成员” 的语义。在E-R模型中,实体集就是这种抽象。例
象为信息结构即概念模型的过程。
概念模型作为概念结构设计的表达工具,为数据库
提供一个说明性结构,是设计数据库逻辑结构即逻
辑模型的基础。
概念模型具备以下主要特点:
13
(1)概念模型是现实世界的一个真实模型 概念模型能表达用户的各种需求,充分反映现实世 界,包括事物和事物之间的联系、用户对数据的处 理要求。
数据库技术及应用 第六章 数据库系统的分析与设计
目录
第一节 数据库设计的概述
第二节 需求分析
第三节 数据库概念结构设计
第四节 数据库逻辑设计
第五节 数据库设计的概述
第六节 数据库的实施和维护
1
6.1 数据库设计的概述
6.1.1数据库设计的任务和内容 6.1.1.1 数据库设计的任务
2
6.1.1.2 数据库设计的内容 1.数据库的结构设计 2.数据库的行为设计
实验性运行 不满意 使用、维护数据库
数据库 实施阶段
程序结 构设计
数据库运 行、维护
6
数据库设计的四个阶段及其任务: (1)用户需求分析:通过详细调查,充分了解原 系统的工作概况,明确用户的各种需求,确定新 系统的功能。(数据流程图与数据字典)。 (2)概念结构设计:根据用户需求设计数据库的 概念模型(用E-R图表示)。 (3)逻辑结构设计:将概念模型转换成DBMS支持 的数据模型(如关系模型的二维表)。 (4)物理结构设计:在具体设备上选定合适的存 储结构和存取方法。
7
数据库设计步骤
综合各个用户的应用需求
系统需求分析阶段 概念结构设计阶段
形成独立于DBMS的概念 模型 用E-R图描述
逻辑结构设计阶段 物理结构设计阶段
将E-R图转换成具体关系模 式 建立逻辑模型、用户视图
安排物理存储,设计索引
数据库实施阶段
数据入库,编制应用程序
数据库使用维护阶段
运行、维护数据库
11
6.2.2.2数据字典


6.3 概念结构设计阶段
需求 分析 阶段
概念设计阶段 抽象 数据 设计 局部 视图 合并 取消 冲突 修改 重构 消除 冗余
逻辑 设计 阶段
功能 数据 模块 流程 数据 字典 图 图
局部 E-R图
12
初步 E-R图
基本 E-R图
概念模型的特点
概念结构设计是将需求分析得到的用户需求抽
数据库 设计 人员
用户
用户 数据 活动 流程 数据 字典 图 图
10
6.2.2.1数据流图
数据流图( Data Flow Diagram, DFD),数据流描述系统中 数据流动的过程,反映的是加工处理的对象。数据流图主要成分有 四种:数据流、数据存储、加工、数据的源点和终点。 数据字典通常包括数据项、数据结构、数据流、数据存储和处理5个 部分: 数据项描述={数据项名,数据项含义说明,别名,数据类型,长 度,取值范围,取值含义,与其他数据项的逻辑关系} 数据结构描述={数据结构名,含义说明,组成:{数据项和数据 结构}} 数据流描述={数据流名,含义说明,数据流来源,数据流去向, 组成:{数据结构},平均流量,高峰期流量} 数据存储描述={数据存储名,含义说明,编号,流入的数据流, 流出的数据流,组成:{数据结构},数据量,存取频度,存取方 式} 处理过程描述={处理过程名,说明,输入:{数据流},输出:{数 据流},处理:{简要说明}}
6数据库的运行与维护
2概念结构设计
Text
5数据库的实施
3逻辑结构设计
4物理结构设计
5
用户需求收集合分析
需求分 析阶段
设计概念结构
概念设 计阶段
图6-3 数据库执行过程
设计逻辑结构 逻辑设 计阶段 数据库 结构设计
数据模型优化 不满意 设计物理结构
评价设计,性能预测 不满意 物理实现
物理设 计阶段
(4)概念模型易于向各种数据模型转换。
概念模型独立于特定的DBMS,因而更加稳定,能 方便地向关系模型、网状模型或层次模型等各种数 据模型转换。
15
需求
需求分析 (自顶向下)
需求 1
……
需求 n
需求 1.1
需求 1.2
需求 n.1
需求 n.2
概念模式 1.1
概念模式 1.2
概念模式 n.1
概念模式 n.2
(2)概念模型易于交流和理解。
概念模型是DBA、应用开发人员和用户之间的主要
界面,因此,概念模型要表达自然、直观和容易理
解,以便和不熟悉计算机的用户交换意见,用户的 积极参与是保证数据库设计成功的关键。
14
(3)概念模型易于修改和扩充。
概念模型要能灵活地加以改变,以反映用户需求和 现实环境的变化。
存储
使用量
供应部门的局部E-R图
34
1.选择局部应用

根据应用系统的具体情况,在多层的数据流
图中选择一个适当层次的数据流图,作为设计 分E-R图的出发点。 往往以中层数据流图作为设计分E-R图的依据 (如图所示)。
35
某工厂管理信息系统
… …
物质管理子系统 销售管理子系统 人事管理子系统 设计分 E-R 图的出发点
21
举例
(1)设计各实体属性如下: 系(系号,系名,主任名) 教师(教师号,教师名,职称) 学生(学号,姓名,年龄,性别) 项目(项目号,名称,负责人) 课程(课程号,课程名,学分) (2)各实体之间的联系有:教师担任课程的 1:n“任课”联系; 教师参加项目的n:m“参加”联系; 学生选修课程的n:m “选修”联系; 教师、学生与系之间的所属关系的 1:n:m “领 导”联系。 其中“参加”联系有一个排名属性, “选修”联系有一个成绩属性。 通过上述分析,某学校的教学管理的ER模型如图1-18所示。
概念结构设计 (自底向上)
概念模式 1 (应用 1)
……
概念模式 n (应用 n)
全局概念模式

自顶向下需求分析与自底向上设计概念结构
16
6.3.1概念结构设计的方法
6.3.1.1 实体-联系模型
概念模型用于信息世界的建模,是现实世界到信息世 界的第一层抽象,是数据库设计人员进行数据库设计的 有力工具,也是数据库设计人员和用户之间进行交流的 语言。所以概念模型一方面应该具有较强的语义表达能 力,能够方便、直接地表达应用中的各种语义知识,另 一方面还应该简单、清晰、易于用户理解。最常用的是 实体-联系方法(Entity—Relationship Approach),该方法用E-R图来描述现实世界的概念模 型,称为实体-联系模型(Entity—Relationship Model)简称E-R模型。 E-R模型的基本元素是:实体、联系和属性。
24
性别
n
成绩
教师名
课程
课程名
学分
6.3.2概念结构设计的步骤
概念结构设计的步骤一般可分为两步:
第一步是抽象数据并设计局部视图,
第二步是集成局部视图,得到全局的概念结构,
如下所示。
25
需求分析
DFD DD
返回用户 征求意见 直到满意 为止
数据抽象、局部 视图的设计
分 E-R 图
视图集成
总 E-R 图
17
1.实体 现实世界的可识别对象。 在E-R模型中,实体用矩形表示,矩形框内写 明实体名。 2.属性:对象的特征—单值属性、多值属性 在E-R模型中,属性用椭圆形表示,并用无向边 将其与相应的实体联系起来。 3.联系 在E-R模型中,联系用菱形表示,菱形框内 写明联系名,并用无向边分别与有关实体连接 起来,同时在无向边旁标注上联系的类型(1:1, 1:n或m:n)。 两个不同实体集之间存在一对一、一对 多和多对多的联系类型
6.1.2数据库设计的方法
3
现实世界 数据分析 概念设计 逻辑设计 物理设计 子模式设计 加载试验数 据 性能考核 否 满意 ? 是 加载数据库 运行和维护 用户业务活动分析 功能模型 事务设计 程序说明 应用程序设计 程序编码调试
图6-2 数据库设计的全过程
4
6.1.3数据库设计的步骤
1需求分析
18
一对一联系:指实体集A中的每一个实体最多 (也可没有)只与实体集B中的一个实体相联 系,反之亦然,称实体集A与实体集B具有一对 一联系。记为1:1。 一对多联系:如果实体集A中的每一个实体可 与实体集B中的多个实体相联系,反之,对于实 体集B中的每一个实体,实体集A中至多只有一 个实体与之联系,则称实体集A与实体集B具有 一对多联系。记为1:n。 多对多联系:如果对于实体集A中的每一个实 体,实体集B中的多个实体与之联系,反之,对 于实体集B中的每一个实体,实体集A中也有多 个实体与之联系,则称实体集A与实体集B具有 多对多联系。记为m: n。

… …

设计分 E-R 图的出发点
36
2.逐一设计分E-R图
选择好局部应用之后,就要对每个局部应用逐 一设计分E-R图。 在现实世界中具体的应用环境常常对实体和属 性已经作了大体的自然的划分。在系统分析阶 段得到的“数据存储”、数据字典中的“数据 结构”和“数据流”都是若干属性有意义的聚 合,就体现了这种划分。可以先从这些内容出 发定义E-R图。 为了简化E-R图的处置,现实世界的事物能作 为属性对待的,尽量作为属性对待。
30
2.局部E-R模型设计
一般说来,在给定的应用环境中,区别属性与实 体要遵循下列两条原则: ①属性不能再具有需要描述的性质。即属性必须是 不可分的数据项,不能再由另一些属性组成。 ②属性不能与其他实体有联系。在E-R图中所有的 联系必须是实体间的联系,而不能有属性与实体之 间发生联系。
31
仓库作为一个属性或实体