数据库设计1.docx
- 文档编号:29838494
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:14
- 大小:168.32KB
数据库设计1.docx
《数据库设计1.docx》由会员分享,可在线阅读,更多相关《数据库设计1.docx(14页珍藏版)》请在冰豆网上搜索。
数据库设计1
数据库设计概述
教学目标:
让学生了解数据库的设计过程,掌握逻辑结构设计方法;
教学重难点:
需求分析,逻辑结构设计
教学工具:
多媒体教室
课时安排:
2课时
教学方法:
讲授法、练习法
教学过程:
导入语:
数据库设计是应用系统设计与开发的关键性工作,所以我们非常有必要掌握设计的相关方法。
6.1数据库设计概述
6.1.1数据库设计的任务、内容和特点
6.1.1.1数据库设计的任务
Ø数据库设计是指根据用户需求研制数据库结构的过程,具体地说,是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能有效的存储数据,满足用户的信息要求和处理要求。
Ø也就是把现实世界中的数据,根据各种应用处理的要求,加以合理地组织,满足硬件和操作系统的特性,利用已有的DBMS来建立能够实现系统目标的数据库。
数据库设计的任务如图6.1所示
6.1.1.2数据库设计的内容
Ø数据库设计包括数据库的结构设计和数据库的行为设计两方面的内容。
1.数据库的结构设计
Ø它包括数据库的概念设计、逻辑设计和物理设计是静态模型设计。
2.数据库的行为设计
Ø数据库的行为设计就是应用程序的设计,为动态模型设计。
Ø6.1.1.3数据库设计的特点
Ø强调结构设计和行为设计两者作一体化的考虑,是一种“反复探寻,逐步求精”的过程这样可以缩短数据库的设计周期,提高数据库的设计效率。
图6.2数据库设计的全过程
6.1.2数据库设计方法简述
Ø数据库设计方法目前可分为四类:
直观设计法、规范设计法、计算机辅助设计法和自动化设计法。
Ø下面简单介绍几种常用的规范设计方法。
Ø1.基于E-R模型的数据库设计方法
2.基于3NF的数据库设计方法
3.基于视图的数据库设计方法
6.1.3数据库设计的步骤
Ø数据库的设计过程可以使用软件工程中的生存周期的概念来说明按规范设计法可将数据库设计分为六个阶段(如图6.3所示):
(1)系统需求分析阶段
(2)概念结构设计阶段
(3)逻辑结构设计阶段
(4)物理设计阶段
(5)数据库实施阶段
(6)数据库运行与维护阶段
Ø该方法是分阶段完成的,每完成一个阶段,都要进行设计分析,评价一些重要的设计指标,把设计阶段产生的文档组织评审,与用户进行交流。
如果设计的数据库不符合要求则进行修改,这种分析和修改可能要重复若干次,以求最后实现的数据库能够比较精确地模拟现实世界,能较准确地反映用户的需求,设计一个完善的数据库应用系统往往是六个阶段的不断反复的过程。
Ø数据库设计中,前两个阶段是面向用户的应用要求,面向具体的问题;中间两个阶段是面向数据库管理系统;最后两个阶段是面向具体的实现方法。
前四个阶段可统称为“分析和设计阶段”,后两个阶段称为“实现和运行阶段”。
Ø六个阶段的主要工作各有不同。
1.系统需求分析阶段
v需求分析是整个数据库设计过程的基础,要收集数据库所有用户的信息内容和处理要求,并加以规格化和分析。
在分析用户需求时,要确保用户目标的一致性。
这是最费时、最复杂的一步,但也是最重要的一步。
2.概念结构设计阶段
v概念设计是把用户的信息要求统一到一个整体逻辑结构中。
3.逻辑结构设计阶段
v逻辑设计是将上一步所得到的概念模型转换为某个DBMS所支持的数据模型,并对其进行优化
图6.3 数据库的设计步骤
4.物理设计阶段
v物理设计是为逻辑数据模型建立一个完整的能实现的数据库结构,包括存储结构和存取方法。
5.数据库实施阶段
6.数据库运行与维护阶段
6.2系统需求分析
Ø需求分析是数据库设计的起点,为以后的具体设计作准备。
必须高度重视系统的需求分析。
Ø6.2.1需求分析的任务
Ø从数据库设计的角度来看,需求分析的任务是:
对现实世界要处理的对象(组织、部门、企业)等进行详细的调查,通过对原系统的了解,收集支持新系统的基础数据并对其进行处理,在此基础上确定新系统的功能。
具体地说,需求分析阶段的任务包括以下三项
图6.4数据库各个设计阶段的描述
1.调查分析用户的活动
2.收集和分析需求数据,确定系统边界
3.编写需求分析说明书
6.2.2需求分析的方法
Ø用于需求分析的方法有多种,主要方法有自顶向下和自底向上两种,如图6.5所示。
Ø其中自顶向下的分析方法(StructuredAnalysis,简称SA方法)是最简单实用的方法。
SA方法从最上层的系统组织机构入手,采用逐层分解的方式分析系统,用数据流图(DataFlowDiagram,DFD)和数据字典(DataDictionary,DD)描述系统。
Ø下面对数据流图和数据字典作些简单的介绍。
Ø1.数据流图
图6.5需求分析的方法
2.数据字典
Ø数据字典是对系统中数据的详细描述,是各类数据结构和属性的清单。
它与数据流图互为注释。
Ø数据字典贯穿于数据库需求分析直到数据库运行的全过程,在不同的阶段其内容和用途各有区别。
Ø在需求分析阶段,它通常包含以下五部分内容。
(1)数据项
v数据项是数据的最小单位,其具体内容包括:
数据顶名、含义说明、别名、类型、长度、取值范围、与其他数据项的关系。
v其中,取值范围、与其他数据项的关系这两项内容定义了完整性约束条件,是设计数据检验功能的依据。
(2)数据结构
v数据结构是数据项有意义的集合。
内容包括:
数据结构名、含义说明,这些内容组成数据项名。
(3)数据流
v数据流可以是数据项,也可以是数据结构,它表示某一处理过程中数据在系统内传输的路径。
v内容包括:
数据流名、说明、流出过程、流入过程,这些内容组成数据项或数据结构。
v其中,流出过程说明该数据流由什么过程而来;流入过程说明该数据流到什么过程。
(4)数据存储
v处理过程中数据的存放场所,也是数据流的来源和去向之一。
可以是手工凭证,手工文档或计算机文件。
v包括{数据存储名,说明,输入数据流,输出数据流,组成:
{数据项或数据结构},数据量,存取频度,存取方式}。
v其中,存取频度是指每天(或每小时、或每周)存取几次,每次存取多少数据等信息。
存取方法指的是批处理,还是联机处理;是检索还是更新;是顺序检索还是随机检索等。
(5)处理过程
v处理过程的处理逻辑通常用判定表或判定树来描述,数据字典只用来描述处理过程的说明性信息。
v处理过程包括{处理过程名,说明,输入:
{数据流},输出:
{数据流},处理,{简要说明}}。
v其中,简要说明主要说明处理过程的功能及处理要求。
v功能是指该处理过程用来做什么(不是怎么做),处理要求指该处理频度要求,如单位时间里处理多少事务、多少数据量、响应时间要求等,这些处理要求是后面物理设计的输入及性能评价的标准。
Ø最终形成的数据流图和数据字典为“需求分析说明书”的主要内容,这是下一步进行概念设计的基础。
6.4逻辑结构设计
6.4.1逻辑结构设计的任务和步骤
Ø概念结构设计阶段得到的E-R模型是用户的模型,可向关系模型进行转换。
Ø一般的逻辑设计分为以下三步(如图6.22所示):
(1)初始关系模式设计;
(2)关系模式规范化;
(3)模式的评价与改进
图6.22关系数据库的逻辑设计
6.4.2初始关系模式设计
1.转换原则
Ø概念设计中得到的E-R图是由实体、属性和联系组成的,而关系数据库逻辑设计的结果是一组关系模式的集合。
所以将E-R图转换为关系模型实际上就是将实体、属性和联系转换成关系模式。
在转换中要遵循以下原则:
(1)一个实体转换为一个关系模式,实体的属性就是关系的属性,实体的键就是关系的键。
(2)一个联系转换为一个关系模式,与该联系相连的各实体的键以及联系的属性均转换为该关系的属性。
该关系的键有三种情况:
①如果联系为1:
1,则每个实体的键都是关系的候选键;
②如果联系为1:
n,则n端实体的键是关系的键;
③如果联系为n:
m,则各实体键的组合是关系的键。
2.具体做法
(1)把每一个实体转换为一个关系
Ø首先分析各实体的属性,从中确定其主键,然后分别用关系模式表示。
例如,以图6.21的E-R模型为例,四个实体分别转换成四个关系模式:
v学生(学号,姓名,性别,年龄)
v课程(课程号,课程名)
v教师(教师号,姓名,性别,职称)
v系(系名,电话)
Ø其中,有下划线者表示是主键。
(2)把每一个联系转换为关系模式
Ø由联系转换得到的关系模式的属性集中,包含两个发生联系的实体中的主键以及联系本身的属性,其关系键的确定与联系的类型有关。
Ø例如,还以图6.21的E-R模型为例,四个联系也分别转换成四个关系模式:
v属于(教师号,系名)
v讲授(教师号,课程号)
v选修(学号,课程号,成绩)
v拥有(系名,学号)
(3)特殊情况的处理
Ø三个或三个以上实体间的一个多元联系在转换为一个关系模式时,与该多元联系相连的各实体的主键及联系本身的属性均转换成为关系的属性,转换后所得到的关系的主键为各实体键的组合。
Ø例如,图6.23表示供应商、项目和零件三个实体之间的多对多联系,如果已知三个实体的主键分别为“供应商号”,“项目号”与“零件号”,则它们之间的联系“供应”可转换为关系模式,其中供应商号,项目号,零件号为此关系的组合关系键。
v供应(供应商号,项目号,零件号,数量)
图6.23多个实体之间的联系
6.4.3关系模式规范化
Ø规范化过程可分为两个步骤:
确定规范式级别,实施规范化处理。
1.确定范式级别
2.实施规范化处理
6.4.4模式评价与改进
1.模式评价
Ø
(1)功能评价
(2)性能评价
2.模式改进
Ø根据模式评价的结果,对已生成的模式进行改进。
v如果因为需求分析、概念设计的疏漏导致某些应用不能得到支持,则应该增加新的关系模式或属性。
v如果因为性能考虑而要求改进,则可采用合并或分解的方法。
(1)合并
Ø如果有若干个关系模式具有相同的主键,并且对这些关系模式的处理主要是查询操作,而且经常是多关系的查询,那么可对这些关系模式按照组合使用频率进行合并。
Ø这样便可以减少联接操作而提高查询效率。
(2)分解
Ø根据应用的不同要求,可以对关系模式进行垂直分解和水平分解。
Ø水平分解是把关系的元组分为若干子集合,定义每个子集合为一个子关系。
Ø对于经常进行大量数据的分类条件查询的关系,可进行水平分解,这样可以减少应用系统每次查询需要访问的记录数,从而提高了查询性能。
v例如,有学生关系(学号,姓名,类别……),其中类别包括大专生、本科生和研究生。
如果多数查询一次只涉及其中的一类学生,就应该把整个学生关系水平分割为大专生、本科生和研究生三个关系。
Ø垂直分解是把关系模式的属性分解为若干子集合,形成若干子关系模式。
垂直分解的原则是把经常一起使用的属性分解出来,形成一个子关系模式。
v例如,有教师关系(教师号,姓名,性别,年龄,职称,工资,岗位津贴,住址,电话),如果经常查询的仅是前六项,而后三项很少使用,则可以将教师关系进行垂直分割,得到两个教师关系:
教师关系1(教师号,姓名,性别,年龄,职称,工资)
教师关系2(教师号,岗位津贴,住址,电话)
Ø这样,便减少了查询的数据传递量,提高了查询速度。
6.5数据库物理设计
Ø数据库的物理设计可分为两步:
(1)确定物理结构,在关系数据库中主要指存取方法和存储结构;
(2)评价物理结构,评价的重点是时间和空间效率。
6.5.1确定物理结构
1.存储记录结构的设计
2.访问方法的设计
3.数据存放位置的设计
4.系统配置的设计
6.5.2评价物理结构
Ø6.6数据库实施
Ø数据库实施主要包括以下工作:
v建立实际数据库结构;
v装入数据;
v应用程序编码与调试;
v数据库试运行;
v整理文档。
Ø6.7数据库运行和维护
Ø数据库运行和维护阶段的主要任务包括以下三项内容:
(1)维护数据库的安全性与完整性;
(2)监测并改善数据库性能;
(3)重新组织和构造数据库。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 设计