第08章 数据库系统的开发与数据库设计_第1页
第08章 数据库系统的开发与数据库设计_第2页
第08章 数据库系统的开发与数据库设计_第3页
第08章 数据库系统的开发与数据库设计_第4页
第08章 数据库系统的开发与数据库设计_第5页
已阅读5页,还剩72页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2023/9/291第八章数据库系统的开发

与数据库设计8.1数据库设计概述8.2数据库设计常用方法8.3数据库设计的基本步骤8.4数据库应用系统的开发方法8.5客户/服务器应用规划综述2023/9/292第八章数据库系统的开发

与数据库设计任务:

掌握数据库设计的概念结构设计和逻辑结构设计内容了解数据库应用系统的开发方法了解客户/服务器应用规划;2023/9/2938.1数据库设计概述

数据库设计的概念数据库设计是指对于一个给定的应用环境,构造(设计)优化的数据库逻辑模式和物理结构,并据此建立数据库及其应用系统,使之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操作要求。目标:为用户和各种应用系统提供一个信息基础设施和高效率的运行环境。2023/9/2948.1数据库设计概述

数据库设计的定义广义的是指基于数据库的应用系统或管理信息系统的设计,包括应用设计和数据库结构设计。狭义的是专指数据库模式或结构的设计。2023/9/2958.1数据库设计概述广义:数据库设计与数据库应用系统设计相结合。即数据库设计包括两个方面:结构特性的设计与行为特性的设计。结构特性的设计就是数据库框架和数据库结构设计。其结果是得到一个合理的数据模型,以反映真实的事务间的联系;目的是汇总各用户的视图,尽量减少冗余,实现数据共享。结构特性是静态的,一旦成型之后,通常不再轻易变动。行为特性设计是指应用程序设计,如查询、报表处理等。它确定用户的行为和动作。用户通过一定的行为与动作存取数据库和处理数据。行为特性现在多由面向对象的程序给出用户操作界面。2023/9/2968.1数据库设计概述现实世界概念模型设计子模式设计物理数据库设计逻辑数据库设计建立数据库数据分析功能分析功能模型功能说明事务设计程序说明应用程序设计程序编码调试结构和行为分离的设计2023/9/297数据库建设的基本规律三分技术,七分管理,十二分基础数据管理数据库建设项目管理企业(即应用部门)的业务管理基础数据收集、入库更新新的数据8.1数据库设计概述2023/9/2988.2数据库设计方法新奥尔良(NewOrleans)方法将数据库设计分为若干阶段和步骤

基于E-R模型的数据库设计方法概念设计阶段广泛采用3NF(第三范式)的设计方法逻辑阶段可采用的有效方法ODL(ObjectDefinitionLanguage)方法面向对象的数据库设计方法2023/9/2998.2数据库设计方法手工设计

计算机辅助设计ORACLEDesigner2000SYBASEPowerDesigner规范设计法

2023/9/29108.3

数据库设计的基本步骤数据库设计分6个阶段需求分析—最困难、最耗费时间的一步概念结构设计逻辑结构设计物理结构设计数据库实施数据库运行和维护

需求分析和概念设计独立于任何数据库管理系统逻辑设计和物理设计与选用的DBMS密切相关2023/9/29118.3.1需求分析阶段需求分析的任务需求分析的方法需求分析的步骤

2023/9/29128.3.1

需求分析阶段—需求分析的任务需求分析阶段的设计目标是通过详细调查现实世界要处理的对象(组织、部门、企业等),充分了解原系统的工作概况,明确用户的各种需求,然后在此基础上确定新系统的功能。2023/9/29138.3.1

需求分析阶段—需求分析的任务调查的内容是数据与处理,即获得用户对数据库的如下要求:信息要求,指用户需要从数据库中获得信息的内容与性质,在数据库中需要存储哪些数据。处理要求,指用户要完成什么处理功能。对处理的响应时间有什么要求,处理方式是批处理还是联机处理。安全性和完整性要求,安全性的意思是保护数据不被未授权的用户破坏,完整性的意思是保护数据不被授权的用户破坏。

2023/9/29148.3.1

需求分析阶段—需求分析的方法

调查与分析用户的需求一般要四步:1.调查组织机构情况。包括了解该组织的部门组成情况,各部门的职责,为分析信息流程作准备。2.调查各部门的业务活动情况。包括了解各部门输入和使用什么数据,如何加工和处理这些数据、输出什么信息、输出到什么部门、输出结果的格式是什么,这是调查的重点。3.在熟悉了业务活动的基础上,协助用户明确对新系统的各种要求,包括信息要求、处理要求、完整性与安全性的要求。4.最后对前面调查结果进行初步分析,确定系统的边界,即确定哪些工作由人工完成,哪些工作由计算机系统来完成。

2023/9/29158.3.1

需求分析阶段—需求分析的步骤

分析用户的活动确定新系统功能包括的范围分析用户活动所涉及的数据分析系统数据。

具体步骤的内容会在软件工程课程中讲解2023/9/29168.3.2概念结构设计阶段现实世界机器世界信息世界需求分析概念结构设计2023/9/29178.3.2

概念结构设计阶段

概念结构设计阶段的重要性概念结构设计阶段的主要特点概念结构设计的方法概念结构设计的工具概念结构设计的步骤2023/9/29188.3.2

概念结构设计阶段(一)概念结构设计阶段的重要性整个数据库设计的关键。通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。2023/9/2919

8.3.2概念结构设计阶段(二)概念结构反映的是信息世界的结构,主要特点是:能真实、充分反映现实世界,包括事物和事物之间的联系。易于理解,可以用它和不熟悉计算机的用户交换意见。易于更改,当环境和应用要求改变时,容易对概念模型修改和扩充。易于向关系、网状、层次等各种数据模型转换。2023/9/29208.3.2概念结构设计阶段(三)概念结构设计四类方法自顶向下:先定义全局概念结构的框架,然后逐步细化。2023/9/2921

(三)概念结构设计四类方法自底向上:先定义局部应用的概念结构,再集合起来得到全局概念结构。8.3.2概念结构设计阶段2023/9/29228.3.2概念结构设计阶段(三)概念结构设计四类方法逐步扩张:先定义核心的概念结构,再扩充生成其他概念结构,直至总体概念结构。2023/9/2923(三)概念结构设计四类方法(三)概念结构设计四类方法混合策略:将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。2023/9/2924概念结构设计常用策略

自顶向下地进行需求分析自底向上地设计概念结构2023/9/29258.3.2概念结构设计阶段(四)概念结构设计的常用工具是E-R图确定实体;确定实体的属性;确定实体的标识属性;确定实体的联系和联系类型;画出表示概念模型的E-R图;确定实体间的依赖关系。2023/9/2926

8.3.2概念结构设计阶段(五)自底向上设计概念结构的步骤 第1步:抽象数据并设计局部视图 第2步:集成局部视图,得到全局概念结构2023/9/29278.3.2概念结构设计阶段(五)自底向上设计概念结构的步骤局部视图设计(即分E-R图)的步骤:⒈选择局部应用⒉逐一设计分E-R图2023/9/29288.3.2概念结构设计阶段(五)自底向上设计概念结构的步骤—设计分E-R图逐一设计分E-R图的任务将各局部应用涉及的数据分别从数据字典中抽取出来参照数据流图,标定各局部应用中的实体、实体的属性、标识实体的主关键字。确定实体之间的联系及其类型(1:1,1:n,m:n)两条准则:(1)属性不能再具有需要描述的性质。即属性必须是不可分的数据项,不能再由另一些属性组成。(2)属性不能与其他实体具有联系。联系只发生在实体之间。2023/9/29298.3.2概念结构设计阶段设计分E-R图2023/9/29308.3.2概念结构设计阶段视图的集成各个局部视图即分E-R图建立好后,还需要对它们进行合并,集成为一个整体的数据概念结构即总E-R图。集成局部E-R图的步骤1.合并2.修改与重构2023/9/29318.3.2概念结构设计阶段视图的集成基本任务消除不必要的冗余,设计生成基本E-R图合并初步E-R图分E-R图可能存在冗余的数据和冗余的实体间联系基本E-R图消除不必要的冗余2023/9/29328.3.2概念结构设计阶段视图的集成分E-R图合并为初步E-R图时特别注意以下一些问题:表示相同事物的实体名和属性名要统一要消除同名异义和同义异名在不同的局部E-R图中同一实体包含的属性可能有所区别,合并时要统一实体初步E-R图消除冗余后得到基本E-R图的方法-规范化理论函数依赖的概念提供了消除冗余联系的形式化工具2023/9/29338.3.2概念结构设计阶段验证整体概念结构视图集成后形成一个整体的数据库概念结构,对该整体概念结构还必须进行进一步验证,确保它能够满足下列条件:整体概念结构内部必须具有一致性,不存在互相矛盾的表达整体概念结构能准确地反映原来的每个视图结构,包括属性、实体及实体间的联系整体概念结构能满足需求分析阶段所确定的所有要求2023/9/29348.3.3逻辑结构设计阶段逻辑结构设计的任务逻辑结构设计的步骤E-R图向关系模型的转换转换内容转换原则数据模型的优化设计用户子模式2023/9/29358.3.3逻辑结构设计阶段(一)逻辑结构设计的任务把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构(二)逻辑结构设计的步骤将概念结构转化为一般的关系、网状、层次模型将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换对数据模型进行优化2023/9/29368.3.3逻辑结构设计阶段(三)E-R图向关系模型的转换E-R图向关系模型的转换要解决的问题如何将实体型和实体间的联系转换为关系模式如何确定这些关系模式的属性和主关键字转换内容将E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转换为关系模式。2023/9/29378.3.3逻辑结构设计阶段(三)E-R图向关系模型的转换实体的属性就是关系的属性,实体的主关键字就是关系的主关键字。实体型间的联系有以下不同情况:(1)一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。转换为一个独立的关系模式与某一端实体对应的关系模式合并(2)一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。转换为一个独立的关系模式与n端对应的关系模式合并2023/9/29388.3.3逻辑结构设计阶段(三)E-R图向关系模型的转换(3)一个m:n联系转换为一个关系模式。 例,“选修”联系是一个m:n联系,可以将它转换为如下关系模式,其中学号与课程号为关系的组合码:选修(学号,课程号,成绩)2023/9/29398.3.3逻辑结构设计阶段(三)E-R图向关系模型的转换(4)三个或三个以上实体间的一个多元联系转换为一个关系模式。 例,“讲授”联系是一个三元联系,可以将它转换为如下关系模式,其中课程号、职工号和书号为关系的组合关键字:

讲授(课程号,职工号,书号)2023/9/29408.3.3逻辑结构设计阶段(三)E-R图向关系模型的转换(5)具有相同码的关系模式可合并目的:减少系统中的关系个数合并方法:将其中一个关系模式的全部属性加入到另一个关系模式中,然后去掉其中的同义属性(可能同名也可能不同名),并适当调整属性的次序2023/9/29418.3.3逻辑结构设计阶段⒊逻辑结构设计阶段还需考虑的问题确定各关系模式的主关键字,考虑实体完整性。确定各关系模式的外部关键字,考虑参照完整性。确定各关系模式中属性的约束、规则和默认值,考虑域完整性。考虑用户完整性。根据用户需求设计视图。考虑安全方案和用户使用权限。2023/9/29428.3.3逻辑结构设计阶段(四)数据模型的优化得到初步数据模型后,还应该适当地修改、调整数据模型的结构,以进一步提高数据库应用系统的性能,这就是数据模型的优化关系数据模型的优化通常以规范化理论为指导2023/9/29438.3.3逻辑结构设计阶段优化数据模型的步骤确定数据依赖:按需求分析阶段所得到的语义,分别写出每个关系模式内部各属性之间的数据依赖,以及不同关系模式属性之间数据依赖消除冗余的联系:对于各个关系模式之间的数据依赖进行极小化处理,消除冗余的联系。确定所属范式:按照数据依赖的理论对关系模式逐一进行分析考查是否存在部分函数依赖、传递函数依赖、多值依赖等确定各关系模式分别属于第几范式2023/9/29448.3.3逻辑结构设计阶段优化数据模型的步骤按照需求分析阶段得到的各种应用对数据处理的要求,分析对于这样的应用环境这些模式是否合适,确定是否要对它们进行合并或分解。注意:并不是规范化程度越高的关系就越优,一般说来,第三范式就足够了2023/9/2945例:在关系模式学生成绩单(学号,英语,数学,语文,平均成绩)

中存在下列函数依赖:学号→英语学号→数学学号→语文学号→平均成绩

(英语,数学,语文)→平均成绩2023/9/2946显然有:学号→(英语,数学,语文)

因此该关系模式中存在传递函数信赖,是2NF关系虽然平均成绩可以由其他属性推算出来,但如果应用中需要经常查询学生的平均成绩,为提高效率,仍然可保留该冗余数据,对关系模式不再做进一步分解2023/9/2947设计用户子模式定义用户外模式时应该注重的问题包括三个方面:

(1)使用更符合用户习惯的别名

(2)针对不同级别的用户定义不同的View,以满足系统对安全性的要求。

(3)简化用户对系统的使用2023/9/29488.3.3逻辑结构设计阶段设计用户子模式定义用户外模式时应该注重的问题包括三个方面:

(1)使用更符合用户习惯的别名

(2)针对不同级别的用户定义不同的View,以满足系统对安全性的要求。

(3)简化用户对系统的使用2023/9/29498.3.4数据库物理设计阶段数据库物理设计的内容数据库物理设计的步骤2023/9/29508.3.4数据库物理设计阶段

数据库物理设计的内容是为逻辑数据模型选取一个最适合应用环境的物理结构(包括存储结构,存储容量,设计索引,和设计备份策略,它依赖于给定的DBMS)2023/9/29518.3.4数据库物理设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论