第八章数据库设计精选文档.ppt

上传人:石*** 文档编号:43979130 上传时间:2022-09-20 格式:PPT 页数:85 大小:3.95MB
返回 下载 相关 举报
第八章数据库设计精选文档.ppt_第1页
第1页 / 共85页
第八章数据库设计精选文档.ppt_第2页
第2页 / 共85页
点击查看更多>>
资源描述

《第八章数据库设计精选文档.ppt》由会员分享,可在线阅读,更多相关《第八章数据库设计精选文档.ppt(85页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第八章数据库设计本讲稿第一页,共八十五页8.1 数据库设计概述8.1.1 8.1.1 数据库设计的特点数据库设计的特点8.1.2 8.1.2 数据库设计方法概述数据库设计方法概述 8.1.3 8.1.3 数据库设计的基本步骤数据库设计的基本步骤本讲稿第二页,共八十五页数据库设计面临的主要问题同时具备数据库与应用业务知识的人很少。同时具备数据库与应用业务知识的人很少。应用业务的数据库系统的目标是什么,在一应用业务的数据库系统的目标是什么,在一开始往往不能很明确。开始往往不能很明确。缺乏完善的设计工具和设计方法。缺乏完善的设计工具和设计方法。用户的要求往往并不是一开始就能完全说清用户的要求往往并不

2、是一开始就能完全说清楚。楚。应用业务系统千差万别,很难找到一种适合所有应用业务系统千差万别,很难找到一种适合所有应用业务的工具和方法。应用业务的工具和方法。本讲稿第三页,共八十五页成功的数据库系统应具备的特点功能强大。功能强大。能准确地表示业务数据。能准确地表示业务数据。容易使用和维护。容易使用和维护。对最终用户操作的响应时间合理。对最终用户操作的响应时间合理。便于数据库结构的改进。便于数据库结构的改进。便于数据的检索和修改。便于数据的检索和修改。较少的数据库维护工作。较少的数据库维护工作。有效的安全机制能确保数据安全。有效的安全机制能确保数据安全。冗余数据最少或不存在。冗余数据最少或不存在。

3、便于数据的备份和恢复。便于数据的备份和恢复。数据库结构对最终用户透明。数据库结构对最终用户透明。本讲稿第四页,共八十五页8.1.1 8.1.1 数数据据库设计库设计的特点的特点(1 1)综合性)综合性 涉及面广,需包含计算机专业知识及业务系统专涉及面广,需包含计算机专业知识及业务系统专业知识;业知识;要解决技术及非技术两方面的问题;要解决技术及非技术两方面的问题;(2 2)结构设计与动态行为设计是分离的)结构设计与动态行为设计是分离的 结构设计是指数据库的模式框架设计(包括语义结结构设计是指数据库的模式框架设计(包括语义结构(概念)、数据结构(逻辑)、存储结构(物理)构(概念)、数据结构(逻辑

4、)、存储结构(物理););动态行为设计是指应用程序设计(动作操纵:功能动态行为设计是指应用程序设计(动作操纵:功能组织、流程控制)组织、流程控制)本讲稿第五页,共八十五页8.1.2 8.1.2 数数据据库设计库设计方法方法概概述述 新奥尔良(新奥尔良(New Orleans)方法)方法 需求说明需求说明需求需求分析分析概念结构概念结构概念结概念结构设计构设计逻辑结构逻辑结构逻辑结逻辑结构设计构设计物物 理理 结结 构构结构结构物理物理设计设计在数据库设计的不同阶段可使用不同的方法,如:基于在数据库设计的不同阶段可使用不同的方法,如:基于E-RE-R模型的设计方法、基于第三范式的设计方法、基于抽

5、象语模型的设计方法、基于第三范式的设计方法、基于抽象语法规范的设计方法等。法规范的设计方法等。数据库设计方法从本质上仍然是手工设计方法,其数据库设计方法从本质上仍然是手工设计方法,其基本思想是基本思想是过程迭代过程迭代和和逐步求精逐步求精。本讲稿第六页,共八十五页8.1.3 数据库设计的基本步骤 需求分析需求分析结构设计结构设计,包括概念结构设计、逻辑结,包括概念结构设计、逻辑结构设计和物理结构设计。构设计和物理结构设计。行为设计行为设计,包括功能设计、事务设计和,包括功能设计、事务设计和程序设计。程序设计。数据库实施数据库实施,包括加载数据库数据和,包括加载数据库数据和调试运行应用程序。调试

6、运行应用程序。数据库运行和维护阶段数据库运行和维护阶段。本讲稿第七页,共八十五页数据库设计全过程 运行和维护运行和维护 需求分析需求分析数据分析数据分析功能分析功能分析概念结构设计概念结构设计逻辑结构设计逻辑结构设计物理结构设计物理结构设计加载数据加载数据功能设计功能设计事务设计事务设计程序设计程序设计调试运行调试运行本讲稿第八页,共八十五页8.2 8.2 数数据据库库需求分析需求分析 分析用户的要求;分析用户的要求;是数据库设计的起点;是数据库设计的起点;其结果将直接影响到后面各阶段的设计;其结果将直接影响到后面各阶段的设计;并影响到最终的数据库系统能否被合理地使并影响到最终的数据库系统能否

7、被合理地使用。用。本讲稿第九页,共八十五页8.2.1 需求分析的任务需求分析需求分析阶段的主要任段的主要任务是是对现实世界要世界要处理的理的对象(公司,部象(公司,部门,企,企业)进行行详细调查,在了解,在了解现行系行系统的概况、确定新系的概况、确定新系统功能的功能的过程中,收集支程中,收集支持系持系统目目标的基的基础数据及其数据及其处理方法。理方法。需求分析是在用需求分析是在用户调查的基的基础上,通上,通过分析,分析,逐步明确用逐步明确用户对系系统的需求,包括数据需求和的需求,包括数据需求和围绕这些数据的些数据的业务处理需求。理需求。本讲稿第十页,共八十五页需求调查内容主要是主要是“数据数据

8、”和和“处理理”。信息需求信息需求 定定义未来数据未来数据库系系统用到的所有信息,明确用用到的所有信息,明确用户将将向数据向数据库中中输入什么入什么样的数据,从数据的数据,从数据库中要求中要求获得哪些内得哪些内容,将要容,将要输出哪些信息。同出哪些信息。同时还要描述数据要描述数据间的的联系等。系等。处理需求理需求 定定义系系统数据数据处理的操作功能,描述操作的理的操作功能,描述操作的优先次序、先次序、执行行频率和率和场合,操作与数据合,操作与数据间的的联系。系。还要明确用要明确用户要完成要完成哪些哪些处理功能,每种理功能,每种处理的理的执行行频度,用度,用户需求的响需求的响应时间以以及及处理的

9、方式,等。理的方式,等。安全性与完整性要求安全性与完整性要求 描述系描述系统中不同用中不同用户对数据数据库的使用和操的使用和操作情况,描述数据之作情况,描述数据之间的关的关联关系以及数据的取关系以及数据的取值范范围要求。要求。本讲稿第十一页,共八十五页数据处理流图 数据存储数据存储数据源数据源数据输出数据输出处理处理在需求分析中,通过自顶向下、逐步分解的方在需求分析中,通过自顶向下、逐步分解的方法分析系统。任何一个系统都可以抽象为数据法分析系统。任何一个系统都可以抽象为数据流图的形式。流图的形式。本讲稿第十二页,共八十五页需求分析需求分析是整个数据需求分析是整个数据库设计中最重要的一中最重要的

10、一步,是其他各步步,是其他各步骤的基的基础。需求分析也是最困需求分析也是最困难最麻最麻烦的一步,的一步,其困其困难之之处不在于技不在于技术上,而在于要上,而在于要了解、分析、表达客了解、分析、表达客观世界并非易事。世界并非易事。本讲稿第十三页,共八十五页8.2.2 需求分析的方法首先首先调查用用户的的实际需求,与用需求,与用户达成共达成共识,然后,然后再分析和表达再分析和表达这些需求。些需求。调查的重点是的重点是“数据数据”和和“处理理”。调查时要抓住两个要抓住两个“流流”:信息流、信息流、处理流理流调查的任的任务是是调研研现行系行系统的的业务活活动规则,并,并提取描述系提取描述系统业务的的现

11、实系系统模型。模型。通常情况下,通常情况下,调查用用户的需求包括三方面内容的需求包括三方面内容:系系统的的业务现状状、信息源流信息源流及及外部要求外部要求本讲稿第十四页,共八十五页业务现状业务方方针政策政策系系统的的组织机构机构业务内容内容约束条件束条件各种各种业务的全的全过程。程。本讲稿第十五页,共八十五页信息源流各种数据的种各种数据的种类、类型及数据量型及数据量各种数据的源各种数据的源头、流向和、流向和终点点各种数据的各种数据的产生、修改、生、修改、查询及更新及更新过程和程和频率率各种数据与各种数据与业务处理的关系理的关系本讲稿第十六页,共八十五页外部要求对数据保密性的要求数据保密性的要求

12、对数据完整性的要求数据完整性的要求对查询响响应时间的要求的要求对新系新系统使用方式的要求使用方式的要求对输入方式的要求,入方式的要求,对输出出报表的要求表的要求对各种数据精度的要求各种数据精度的要求对吞吐量的要求吞吐量的要求对未来功能、性能及未来功能、性能及应用范用范围扩展的要求展的要求本讲稿第十七页,共八十五页需求调查常用方法在在进行需求行需求调查时,实际上就是上就是发现现行行业务系系统的运作事的运作事实。常用的常用的发现事事实的方法有的方法有检查文档文档面面谈观察操作中的察操作中的业务研究和研究和问卷卷调查等等本讲稿第十八页,共八十五页检查文档检查文档可以文档可以发现文档中有助于提供与文档

13、中有助于提供与问题相关的相关的业务信息(或者信息(或者业务事事务的的信息)。信息)。如果如果问题与与现存系存系统相关,相关,则一定有与一定有与该系系统相关的文档。相关的文档。检查与目前系与目前系统相关的文档、表格、相关的文档、表格、报告告和文件是一种非常好的快速理解系和文件是一种非常好的快速理解系统的方的方法。法。本讲稿第十九页,共八十五页面谈是最常用的,通常也是最有用的事是最常用的,通常也是最有用的事实发现方法。方法。通通过面面对面面谈话获取有用信息。取有用信息。面面谈可以找出事可以找出事实、确、确认、澄清事、澄清事实、得、得到所有最到所有最终用用户、标识需求、集中意需求、集中意见和和观点。

14、点。本讲稿第二十页,共八十五页观察业务的运转观察是用来理解一个系察是用来理解一个系统的最有效的事的最有效的事实发现方法之一。方法之一。使用使用这个技个技术可以参与或者可以参与或者观察做事的人察做事的人以了解系以了解系统。为了确保成功,要尽可能多的了解要了确保成功,要尽可能多的了解要观察察的人和活的人和活动。如,所。如,所观察的活察的活动的低谷、的低谷、正常以及高峰期分正常以及高峰期分别是什么是什么时候?候?本讲稿第二十一页,共八十五页研究通通过计算机行算机行业的的杂志、参考志、参考书和因特和因特网来网来查找是否有找是否有类似的解决此似的解决此问题的方的方法,甚至可以法,甚至可以查找和研究是否存

15、在解决找和研究是否存在解决此此问题的的软件包。件包。这种方法也有很多缺点。比如,如果存在种方法也有很多缺点。比如,如果存在解决此解决此问题的方法,的方法,则可以可以节省很多省很多时间,但如果没有,但如果没有,则可能会非常浪可能会非常浪费时间。本讲稿第二十二页,共八十五页问卷调查问卷是一种有着特定目的的小册子,卷是一种有着特定目的的小册子,这样可以在控制答案的同可以在控制答案的同时,集中一大群,集中一大群人的意人的意见。当和大批用当和大批用户打交道,其他的事打交道,其他的事实发现技技术都不能有效的把都不能有效的把这些事些事实列成表格列成表格时,就可以采用就可以采用问卷卷调查方式。方式。本讲稿第二

16、十三页,共八十五页自由格式问卷为答卷人提供的答案有更大的自由。答卷人提供的答案有更大的自由。答卷人在答卷人在题目后的空白地方写答案。如目后的空白地方写答案。如:“你当前收到的是什么你当前收到的是什么报表,它表,它们有什么用?有什么用?”“这些些报告是否存在告是否存在问题?如果有,?如果有,请说明明”。问题:答卷人的答案可能答卷人的答案可能难以列成表格,而以列成表格,而且,有且,有时答卷人可能答非所答卷人可能答非所问。本讲稿第二十四页,共八十五页固定格式问卷包含的包含的问题答案是特定的。回答者必答案是特定的。回答者必须从提供从提供的答案中的答案中选择一个。一个。结果容易列表。果容易列表。答卷人不

17、能提供一些有用的附加信息。如答卷人不能提供一些有用的附加信息。如:现在的在的业务系系统的的报告形式非常理想,不必改告形式非常理想,不必改动。答卷人可以答卷人可以选择的答案有的答案有“是是”或或“否否”,或者一,或者一组选项,包括,包括“非常非常赞同同”、“同意同意”,“没意没意见”、“不同意不同意”和和“强烈反烈反对”等。等。本讲稿第二十五页,共八十五页请购审批流程涉及角色 序序号号角色角色职责职责1车间请购员车间请购员填写、删除、查询请购单填写、删除、查询请购单2车间负责人车间负责人审核请购单(一级审核)审核请购单(一级审核)3设备机动处核设备机动处核算员算员职能部门审核请购单职能部门审核请

18、购单4生产经营办核生产经营办核算员算员职能部门审核请购单职能部门审核请购单5综合办核算员综合办核算员职能部门审核请购单职能部门审核请购单6计财处材料核计财处材料核算员算员对审核单进行汇总,给出最终审核意见对审核单进行汇总,给出最终审核意见本讲稿第二十六页,共八十五页本讲稿第二十七页,共八十五页业务操作业务操作1、填写采购单、填写采购单【车间采购员车间采购员】车间请购员导入从车间请购员导入从U8获取的请购单,置职能部门审核开关。获取的请购单,置职能部门审核开关。本讲稿第二十八页,共八十五页2、车间审核请购单、车间审核请购单【车间负责人车间负责人】3、设备机动处审核、设备机动处审核【设备机动处核算

19、员设备机动处核算员】4、生产经营处审核、生产经营处审核【生产经营处核算员生产经营处核算员】5、综合办审核、综合办审核【综合办核算员综合办核算员】6、计财处审核、计财处审核【计财处材料核算员计财处材料核算员】本讲稿第二十九页,共八十五页8.3 8.3 数数据据库结构设计库结构设计 数据库设计分为:数据库结构设计和数数据库设计分为:数据库结构设计和数据库行为设计。据库行为设计。结构设计结构设计包括设计数据库的概念结构、逻包括设计数据库的概念结构、逻辑结构和存储结构。辑结构和存储结构。行为设计行为设计包括设计数据库的功能组织和包括设计数据库的功能组织和流程控制。流程控制。本讲稿第三十页,共八十五页8

20、.3.1 8.3.1 概概念念结构设计结构设计 什么是概念什么是概念结构构设计将需求分析得到的用户需求抽象为信息结构即将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计概念模型的过程就是概念结构设计概念结构是各种数据模型的共同基础,它比数据模概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定型更独立于机器、更抽象,从而更加稳定概念结构设计是整个数据库设计的关键概念结构设计是整个数据库设计的关键本讲稿第三十一页,共八十五页8.3.1 8.3.1 概概念念结构设计结构设计 现实世界机器世界信息世界需求分析概念结构设计本讲稿第三十二页,共八十五页8.

21、3.1 8.3.1 概概念念结构设计结构设计 概念概念结构构设计的特点的特点(1)能真能真实、充分地反映、充分地反映现实世界世界(2)易于理解易于理解(3)易于更改易于更改(4)易于向关系、网状、易于向关系、网状、层次等各种数据模型次等各种数据模型转换描述概念模型的工具描述概念模型的工具E-R模型模型本讲稿第三十三页,共八十五页8.3.1 8.3.1 概概念念结构设计结构设计 设计概念概念结构的四构的四类方法方法自顶向下自顶向下 首先定义全局概念结构的框架,然后逐步细化首先定义全局概念结构的框架,然后逐步细化本讲稿第三十四页,共八十五页35自底向上自底向上 首先定义各局部应用的概念结构,然后将

22、它们集成首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构起来,得到全局概念结构自底向上策略8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第三十五页,共八十五页36自底向上自底向上 首先定义各局部应用的概念结构,然后将它们集成首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构起来,得到全局概念结构自底向上策略8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第三十六页,共八十五页37逐步扩张逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概以滚雪球的方式

23、逐步生成其他概念结构,直至总体概念结构念结构逐步扩张策略8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第三十七页,共八十五页38混合策略混合策略 将自顶向下和自底向上相结合,用自顶向下策将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。成由自底向上策略中设计的各局部概念结构。8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第三十八页,共八十五页39常用策略常用策略自顶向下地进行需求分析自顶向下地进行需求分析自底向上地设计概念结构自底向上地设计概念结构8.3.1 8

24、.3.1 概概念念结构设计结构设计 本讲稿第三十九页,共八十五页40自底向上设计概念结构的步骤 第1步:抽象数据并设计局部视图第2步:集成局部视图,得到全局概念结构8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第四十页,共八十五页8.3.1 8.3.1 概概念念结构设计结构设计 各个局部各个局部视图即分即分E-R图建立好后,建立好后,还需要需要对它它们进行合并,集成行合并,集成为一个整体的数据概念一个整体的数据概念结构即构即总E-R图。本讲稿第四十一页,共八十五页8.3.1 8.3.1 概概念念结构设计结构设计 集成局部集成局部E-R图的步的步骤1.合并合并2.修改与重构修改与重构本

25、讲稿第四十二页,共八十五页8.3.1 8.3.1 概概念念结构设计结构设计 各分各分E-R图存在冲突存在冲突各个分各个分E-R图之间必定会存在许多不一致的地图之间必定会存在许多不一致的地方方合并分合并分E-R图的主要工作与关的主要工作与关键合理消除各分合理消除各分E-R图的冲突图的冲突本讲稿第四十三页,共八十五页8.3.1 8.3.1 概概念念结构设计结构设计 冲突的种冲突的种类属性冲突属性冲突命名冲突命名冲突结构冲突结构冲突本讲稿第四十四页,共八十五页45两两类属性冲突属性冲突属性域冲突属性域冲突属性值的类型属性值的类型取值范围取值范围取值集合不同取值集合不同属性取值单位冲突属性取值单位冲突

26、8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第四十五页,共八十五页46两两类命名冲突命名冲突同名异义同名异义:不同意义的对象在不同的局部应用中具有相同的:不同意义的对象在不同的局部应用中具有相同的名字名字异名同义(一义多名)异名同义(一义多名):同一意义的对象在不同的局部应用:同一意义的对象在不同的局部应用中具有不同的名字中具有不同的名字8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第四十六页,共八十五页47三三类结构冲突构冲突同一对象在不同应用中具有不同的抽象同一对象在不同应用中具有不同的抽象同一实体在不同分同一实体在不同分E-R图中所包含的属性个数和属性排列次序图中所

27、包含的属性个数和属性排列次序不完全相同不完全相同实体之间的联系在不同局部视图中呈现不同的类型实体之间的联系在不同局部视图中呈现不同的类型8.3.1 8.3.1 概概念念结构设计结构设计 本讲稿第四十七页,共八十五页局部E-R图nm产品产品产品号产品号性能参数性能参数零件零件零件号零件号价格价格组成组成零件个数零件个数nm材料材料材料号材料号材料材料类型型零件零件零件号零件号规格规格使用使用使用量使用量库存量库存量本讲稿第四十八页,共八十五页合并示例nnm产品产品产品号产品号性能参数性能参数零件零件零件号零件号规格规格组成组成零件个数零件个数价格价格使用使用使用量使用量材料号材料号材料类型材料类

28、型库存量库存量材料材料本讲稿第四十九页,共八十五页50逻辑结构构设计的任的任务把概念结构设计阶段设计好的基本把概念结构设计阶段设计好的基本E-R图转换为与选用图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构产品所支持的数据模型相符合的逻辑结构逻辑结构构设计的步的步骤将概念结构转化为一般的关系、网状、层次模型将概念结构转化为一般的关系、网状、层次模型将转换来的关系、网状、层次模型向特定将转换来的关系、网状、层次模型向特定DBMS支持下的数据支持下的数据模型转换模型转换对数据模型进行优化对数据模型进行优化8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第五十页,共八十五页51 逻

29、辑结构设计时的3个步骤 8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第五十一页,共八十五页52转换内容内容转换原原则8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第五十二页,共八十五页53E-R图向关系模型的向关系模型的转换要解决的要解决的问题 如何将实体型和实体间的联系转换为关系模式如何将实体型和实体间的联系转换为关系模式如何确定这些关系模式的属性和码如何确定这些关系模式的属性和码 转换内容内容将将E-R图转换为关系模型:将实体、实体的属性和图转换为关系模型:将实体、实体的属性和实体之间的联系转换为关系模式。实体之间的联系转换为关系模式。8.3.2 8.3.2 逻辑结构

30、设计逻辑结构设计 本讲稿第五十三页,共八十五页54实体型体型间的的联系有以下不同情况系有以下不同情况:(1)一个一个1:1联系可以系可以转换为一个独立的关系模式,也可以一个独立的关系模式,也可以与任意一端与任意一端对应的关系模式合并。的关系模式合并。转换为一个独立的关系模式转换为一个独立的关系模式与某一端实体对应的关系模式合并与某一端实体对应的关系模式合并(2)一个一个1:n联系可以系可以转换为一个独立的关系模式,也一个独立的关系模式,也可以与可以与n端端对应的关系模式合并。的关系模式合并。转换为一个独立的关系模式转换为一个独立的关系模式与与n端对应的关系模式合并端对应的关系模式合并8.3.2

31、 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第五十四页,共八十五页55(3)一个一个m:n联系系转换为一个关系模式。一个关系模式。例,例,“选修修”联系是一个系是一个m:n联系,可以将它系,可以将它转换为如下如下关系模式,其中学号与关系模式,其中学号与课程号程号为关系的关系的组合合码:选修(修(学号,学号,课程号程号,成,成绩)8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第五十五页,共八十五页1:1转换示例部门部门(部门号部门号,部门名,部门名,经理号经理号)经理经理(经理号经理号,经理名,电话),经理名,电话)或者:或者:部门部门(部门号部门号,部门名),部门名)经理经理(经理

32、号经理号,部门号部门号,经理名,经理名,电话)电话)11经理经理部门部门管理管理部门名部门名部门号部门号经理号经理号经理名经理名电话电话本讲稿第五十六页,共八十五页1:n转换示例部门部门(部门号部门号,部门名),部门名)职工职工(职工号职工号,部门号部门号,职工,职工名,工资)名,工资)n1职工职工部门部门工作工作部门名部门名部门号部门号职工号职工号职工名职工名工资工资本讲稿第五十七页,共八十五页m:n转换示例教师教师(教师号教师号,教师名,职称),教师名,职称)课程课程(课程号课程号,课程名,学分),课程名,学分)授课授课(教师号,课程号教师号,课程号,授课时数),授课时数)nm课程课程教师

33、教师授课授课教师名教师名教师号教师号课程号课程号课程名课程名学分学分职称职称授课时数授课时数本讲稿第五十八页,共八十五页59(4)三个或三个以上三个或三个以上实体体间的一个的一个多元多元联系系转换为一个关系模一个关系模式。式。例,例,“讲授授”联系是一个三元系是一个三元联系,可以将它系,可以将它转换为如下关如下关系模式,其中系模式,其中课程号、程号、职工号和工号和书号号为关系的关系的组合合码:讲授(授(课程号,程号,职工号,工号,书号号)8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第五十九页,共八十五页60(5)具有具有相同相同码的关系模式可合并的关系模式可合并目的:减少系统中的关

34、系个数目的:减少系统中的关系个数合并方法:将其中一个关系模式的全部属性加入到另一个关系合并方法:将其中一个关系模式的全部属性加入到另一个关系模式中,然后去掉其中的同义属性(可能同名也可能不同名),模式中,然后去掉其中的同义属性(可能同名也可能不同名),并适当调整属性的次序并适当调整属性的次序8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第六十页,共八十五页61得到初步数据模型后,得到初步数据模型后,还应该适当地修改、适当地修改、调整数据模型的整数据模型的结构,以构,以进一步提高数据一步提高数据库应用系用系统的性能,的性能,这就是就是数据模数据模型的型的优化化关系数据模型的关系数据模型

35、的优化通常以化通常以规范化理范化理论为指指导8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第六十一页,共八十五页62优化数据模型的方法化数据模型的方法1.确定数据依确定数据依赖按需求分析按需求分析阶段所得到的段所得到的语义,分,分别写出每个关系模式内部各属性之写出每个关系模式内部各属性之间的的数据依数据依赖以及不同关系模式属性之以及不同关系模式属性之间数据依数据依赖2.消除冗余的消除冗余的联系系对于各个关系模式之于各个关系模式之间的数据依的数据依赖进行极小化行极小化处理,消除冗余的理,消除冗余的联系。系。3.确定所属范式确定所属范式按照数据依赖的理论对关系模式逐一进行分析按照数据依赖

36、的理论对关系模式逐一进行分析考查是否存在部分函数依赖、传递函数依赖、多值依赖等考查是否存在部分函数依赖、传递函数依赖、多值依赖等确定各关系模式分别属于第几范式确定各关系模式分别属于第几范式8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第六十二页,共八十五页634.按照需求分析按照需求分析阶段得到的各种段得到的各种应用用对数据数据处理的要求,分析理的要求,分析对于于这样的的应用用环境境这些模式是否合适,确定是否要些模式是否合适,确定是否要对它它们进行合并或分解。行合并或分解。注意:注意:并不是并不是规范化程度越高的关系就越范化程度越高的关系就越优,一般一般说来,来,第三范式就足第三范式

37、就足够了了8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第六十三页,共八十五页645.按照需求分析按照需求分析阶段得到的各种段得到的各种应用用对数据数据处理的要求,理的要求,对关系模式关系模式进行必要的分解,以提高数据操作的效率和存行必要的分解,以提高数据操作的效率和存储空空间的利用率的利用率常用分解方法常用分解方法水平分解水平分解垂直分解垂直分解8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第六十四页,共八十五页65水平分解水平分解什么是水平分解什么是水平分解把把(基基本本)关关系系的的元元组分分为若若干干子子集集合合,定定义每每个个子子集合集合为一个子关系,以提高系一个

38、子关系,以提高系统的效率的效率水平分解的适用范围水平分解的适用范围满足足“80/20原原则”的的应用用并并发事事务经常存取常存取不相交的数据不相交的数据8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第六十五页,共八十五页66垂直分解垂直分解什么是垂直分解什么是垂直分解把把关关系系模模式式R的的属属性性分分解解为若若干干子子集集合合,形形成成若若干干子子关关系模式系模式垂直分解的适用范围垂直分解的适用范围取决于分解后取决于分解后R上的所有事上的所有事务的的总效率是否得到了提高效率是否得到了提高8.3.2 8.3.2 逻辑结构设计逻辑结构设计 本讲稿第六十六页,共八十五页 设计外模式设计

39、外模式 将概念模型转换为逻辑数据模型之后,还应该根将概念模型转换为逻辑数据模型之后,还应该根据局部应用需求,并结合具体的数据库管理系统据局部应用需求,并结合具体的数据库管理系统的特点,设计用户的外模式。的特点,设计用户的外模式。外模式概念对应关系数据库的视图概念,设外模式概念对应关系数据库的视图概念,设计外模式是为了更好地满足局部用户的需求。计外模式是为了更好地满足局部用户的需求。定义数据库的模式主要是从系统的时间效率、定义数据库的模式主要是从系统的时间效率、空间效率、易维护等角度出发。空间效率、易维护等角度出发。本讲稿第六十七页,共八十五页定义外模式考虑事项使用更符合用户习惯的别名。使用更符

40、合用户习惯的别名。对不同级别的用户定义不同的视图,以保证对不同级别的用户定义不同的视图,以保证数据的安全。数据的安全。简化用户对系统的使用。简化用户对系统的使用。本讲稿第六十八页,共八十五页8.4 8.4 数数据据库库行行为设计为设计 8.4.1 功能需求分析功能需求分析8.4.2 功能功能设计8.4.3 事务设计事务设计本讲稿第六十九页,共八十五页8.4.1 功能需求分析在进行需求分析时,我们实际上进行了两在进行需求分析时,我们实际上进行了两项工作,一项是项工作,一项是“数据流数据流”的调查分析,的调查分析,另一项是另一项是“事务处理事务处理”过程的调查分析。过程的调查分析。数据流数据流的调

41、查分析为数据库的信息结构提供的调查分析为数据库的信息结构提供了最原始的依据,了最原始的依据,事务处理事务处理的调查分析是行为设计的基础。的调查分析是行为设计的基础。本讲稿第七十页,共八十五页对行为特性要进行的分析标识所有的查询、报表、事务及动态特性,指出对数据标识所有的查询、报表、事务及动态特性,指出对数据库所要进行的各种处理;库所要进行的各种处理;指出对每个实体所进行的操作(增、删、改、查);指出对每个实体所进行的操作(增、删、改、查);给出每个操作的语义,包括结构约束和操作约束;给出每个操作的语义,包括结构约束和操作约束;给出每个操作(针对某一对象)的频率;给出每个操作(针对某一对象)的频

42、率;给出每个操作(针对某一应用)的响应时间;给出每个操作(针对某一应用)的响应时间;给出该系统总的目标。给出该系统总的目标。本讲稿第七十一页,共八十五页示例教教师退休行退休行为的操作特征的操作特征为:没有未教授完的没有未教授完的课程;程;没有未完成的科研没有未完成的科研课题;从当前教从当前教师表中表中删除除该教教师记录;在退休教在退休教师表中插入表中插入该教教师记录。本讲稿第七十二页,共八十五页8.4.2 功能设计 目标目标功能功能2 2功能功能n n功能功能1 1功能功能2222功能功能2323功能功能2121系统目标的实现是通过系统的各功能模块来达到的。由于系统目标的实现是通过系统的各功能

43、模块来达到的。由于每个系统功能又可以划分为若干个更具体的功能模块,因每个系统功能又可以划分为若干个更具体的功能模块,因此,可以从目标开始,一层一层分解下去,直到每个子功此,可以从目标开始,一层一层分解下去,直到每个子功能模块只执行一个具体的任务。能模块只执行一个具体的任务。本讲稿第七十三页,共八十五页例:“学籍管理”的功能结构图 学籍管理学籍管理录取分班录取分班入学报到入学报到录入录入修改修改查询查询修课管理修课管理本讲稿第七十四页,共八十五页8.4.3 8.4.3 事事务设计务设计 事务处理是计算机模拟人处理事务的过程,事务处理是计算机模拟人处理事务的过程,包括:包括:输入设计输入设计输出设

44、计输出设计功能设计功能设计等等等等 本讲稿第七十五页,共八十五页8.5 数据库实施加加载数据数据调试和运行和运行应用程序用程序本讲稿第七十六页,共八十五页1.加载数据在数据在数据库系系统中,一般数据量都很大,各中,一般数据量都很大,各应用用环境差异也很大境差异也很大。为了保了保证数据数据库中的数据正确、无中的数据正确、无误,必,必须十分重十分重视数据的校数据的校验工作。工作。在将数据在将数据输入系入系统进行数据行数据转换过程中,程中,应该进行多次的校行多次的校验。对于重要的数据的校于重要的数据的校验更更应该反复多次,确反复多次,确认无无误后再后再进入到数据入到数据库中。中。本讲稿第七十七页,共

45、八十五页加载数据(续)如果新建数据如果新建数据库的数据来自已有文件或数据的数据来自已有文件或数据库,则应该注意旧的数据模式注意旧的数据模式结构与新的数构与新的数据模式据模式结构之构之间的的对应关系,然后再将旧的关系,然后再将旧的数据数据导入到新的数据入到新的数据库中。中。目前,很多目前,很多DBMS都提供了数据都提供了数据导入的功入的功能,有些能,有些DBMS还提供了功能提供了功能强大的数据大的数据转换功能。功能。本讲稿第七十八页,共八十五页2.调试和运行应用程序在有一部分数据加在有一部分数据加载到数据到数据库之后,就可以开始之后,就可以开始对数据数据库系系统进行行联合合调试了,了,这个个过程

46、又称程又称为数数据据库试运行运行。这一一阶段要段要实际运行数据运行数据库应用程序,用程序,执行行对数据数据库的各种操作,的各种操作,测试应用程序的功能是否用程序的功能是否满足足设计要求。要求。如果不如果不满足,足,则要要对应用程序用程序进行修改、行修改、调整,直到整,直到达到达到设计要求要求为止。止。在数据在数据库试运行运行阶段,段,还要要对系系统的性能指的性能指标进行行测试,分析其是否达到分析其是否达到设计目目标。本讲稿第七十九页,共八十五页8.6 数据库的运行和维护 数据数据库投入运行投入运行标志着开志着开发工作的基本完成和工作的基本完成和维护工作的开始,数据工作的开始,数据库只要存在一天

47、,就需要不断地只要存在一天,就需要不断地对它它进行行调整和整和维护。在数据在数据库运行运行阶段,段,对数据数据库的的经常性的常性的维护工作工作主要由数据主要由数据库系系统管理管理员完成,其主要工作包括:完成,其主要工作包括:数据数据库的的备份和恢复份和恢复数据数据库的安全性和完整性控制的安全性和完整性控制监视、分析、分析、调整数据整数据库性能性能 数据数据库的重的重组 本讲稿第八十页,共八十五页数据库的备份和恢复对数据数据库进行定期的行定期的备份,份,一旦出一旦出现故障,要能及故障,要能及时地将数据地将数据库恢复恢复到尽可能的正确状到尽可能的正确状态,以减少数据,以减少数据库损失。失。本讲稿第

48、八十一页,共八十五页数据库的安全性和完整性控制随着数据随着数据库应用用环境的境的变化,化,对数据数据库的安的安全性和完整性要求也会全性和完整性要求也会发生生变化。如:化。如:收回某些用收回某些用户的的权限限增加、修改某些用增加、修改某些用户的的权限限增加、增加、删除用除用户这都需要系都需要系统管理管理员对数据数据库进行适当的行适当的调整,整,以反映以反映这些新的些新的变化。化。本讲稿第八十二页,共八十五页监视、分析、调整数据库性能监视数据数据库的运行情况,并的运行情况,并对检测数据数据进行分析,找出能行分析,找出能够提高性能的可行性,并提高性能的可行性,并适当地适当地对数据数据库进行行调整。整

49、。目前有些目前有些DBMS产品提供了性能品提供了性能检测工具,工具,数据数据库系系统管理管理员可以利用可以利用这些工具很方些工具很方便地便地监视数据数据库。本讲稿第八十三页,共八十五页数据库的重组数据数据库经过一段一段时间的运行后,随着数据的的运行后,随着数据的不断添加、不断添加、删除和修改,会使数据除和修改,会使数据库的存取的存取效率降低,效率降低,这时数据数据库管理管理员可以改可以改变数据数据库数据的数据的组织方式,通方式,通过增加、增加、删除或除或调整整部分索引等方法,改善系部分索引等方法,改善系统的性能。的性能。注意数据注意数据库的重的重组并不改并不改变数据数据库的的逻辑结构。构。本讲稿第八十四页,共八十五页数据库设计小结数据数据库的的结构和构和应用程序用程序设计的好坏只是相的好坏只是相对的,它并不能保的,它并不能保证数据数据库应用系用系统始始终处于良于良好的性能状好的性能状态。随着数据随着数据库的使用,系的使用,系统的性能有可能会日的性能有可能会日趋下降。下降。数据数据库的的维护工作与一台机器的工作与一台机器的维护工作工作类似,似,花的功夫越多,它服花的功夫越多,它服务得就越好。得就越好。本讲稿第八十五页,共八十五页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁