第8章数据库设计.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第8章数据库设计.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 设计
- 资源描述:
-
1、第第8 8章章 数据库设计数据库设计8.1 8.1 数据库设计概述数据库设计概述 8.2 8.2 数据库需求分析数据库需求分析8.3 8.3 数据库结构设计数据库结构设计8.4 8.4 数据库行为设计数据库行为设计8.5 8.5 数据库的实施数据库的实施8.6 8.6 数据库的运行和维护数据库的运行和维护 8.18.1数据库设计概述数据库设计概述o数据库设计数据库设计n数据库设计数据库设计是指对于一个给定的应用环境,是指对于一个给定的应用环境,构造(设计)优化的数据库构造(设计)优化的数据库逻辑模式逻辑模式和和物理物理结构结构,并据此建立,并据此建立数据库数据库及其及其应用系统应用系统,使,使
2、之能够有效地存储和管理数据,满足各种用之能够有效地存储和管理数据,满足各种用户的应用需求,包括信息管理要求和数据操户的应用需求,包括信息管理要求和数据操作要求。作要求。n目标:为用户和各种应用系统提供一个信息目标:为用户和各种应用系统提供一个信息基础设施和高效率的运行环境基础设施和高效率的运行环境8.18.1数据库设计概述数据库设计概述8.18.1数据库设计概述数据库设计概述o数据库设计面临的主要问题数据库设计面临的主要问题n同时具备数据库与应用业务知识的人很少。同时具备数据库与应用业务知识的人很少。n应用业务的数据库系统的目标是什么在一开应用业务的数据库系统的目标是什么在一开始往往不能很明确
3、。始往往不能很明确。n缺乏完善的设计工具和设计方法。缺乏完善的设计工具和设计方法。n用户的要求往往并不是一开始就能完全说清用户的要求往往并不是一开始就能完全说清楚。楚。n应用业务系统千差万别,很难找到一种适合应用业务系统千差万别,很难找到一种适合所有应用业务的工具和方法。所有应用业务的工具和方法。8.18.1数据库设计概述数据库设计概述o成功的数据库系统应具备的特点成功的数据库系统应具备的特点n功能强大。功能强大。n能准确地表示业务数据。能准确地表示业务数据。n容易使用和维护。容易使用和维护。n对最终用户操作的响应时间合理。对最终用户操作的响应时间合理。n便于数据库结构的改进。便于数据库结构的
4、改进。n便于数据的检索和修改。便于数据的检索和修改。n较少的数据库维护工作。较少的数据库维护工作。n有效的安全机制能确保数据安全。有效的安全机制能确保数据安全。n冗余数据最少或不存在。冗余数据最少或不存在。n便于数据的备份和恢复。便于数据的备份和恢复。n数据库结构对最终用户透明。数据库结构对最终用户透明。8.1.1 数据库设计的特点o数据库建设的基本规律数据库建设的基本规律n三分技术,七分管理,十二分基础数据三分技术,七分管理,十二分基础数据 n管理管理 数据库建设项目管理数据库建设项目管理 企业(即应用部门)的业务管理企业(即应用部门)的业务管理 n基础数据基础数据 收集、入库收集、入库 更
5、新的数据更新的数据8.1.1 数据库设计的特点o综合性综合性 n涉及面广,需包含涉及面广,需包含计算机专业知识计算机专业知识及及业务系统专业知识业务系统专业知识;n要解决要解决技术技术及及非技术非技术两方面的问题;两方面的问题;o静态结构(数据)设计与动态行为(处理)设计是分离。静态结构(数据)设计与动态行为(处理)设计是分离。n静态结构设计静态结构设计是指数据库的模式框架设计(包括语义结是指数据库的模式框架设计(包括语义结构(概念)、数据结构(逻辑)、存储结构(物理);构(概念)、数据结构(逻辑)、存储结构(物理);n动态行为设计动态行为设计是指应用程序设计(动作操纵:功能组织、是指应用程序
6、设计(动作操纵:功能组织、流程控制)流程控制)8.1.1 数据库设计的特点需求分析需求分析数据分析数据分析功能分析功能分析概念模型设计概念模型设计逻辑模型设计逻辑模型设计物理数据库设计物理数据库设计加载数据库加载数据库功能模型功能模型功能说明功能说明事务设计事务设计用户界面及用户界面及程序设计程序设计调试运行调试运行8.1.2 数据库设计方法概述o规范设计法规范设计法n新奥尔良(新奥尔良(New Orleans)方法方法将数据库设计分为若干阶段和步骤将数据库设计分为若干阶段和步骤 n基于基于E-R模型的数据库设计方法模型的数据库设计方法概念设计阶段广泛采用概念设计阶段广泛采用n3NF(第三范式
7、)的设计方法第三范式)的设计方法逻辑阶段可采用的有效方法逻辑阶段可采用的有效方法 8.1.2 数据库设计方法概述 o新奥尔良(新奥尔良(New Orleans)方法)方法 需求说明需求说明需求需求分析分析概念结构概念结构概念结概念结构设计构设计逻辑结构逻辑结构逻辑结逻辑结构设计构设计物理结构物理结构物理物理设计设计8.1.3 数据库设计的基本步骤 o需求分析需求分析o结构设计结构设计n概念结构设计概念结构设计n逻辑结构设计逻辑结构设计n物理结构设计物理结构设计o行为设计行为设计n(应用系统)功能设计(应用系统)功能设计n事务设计事务设计n用户界面及程序设计用户界面及程序设计o数据库实施数据库实
8、施o数据库运行和维护数据库运行和维护8.1.3 数据库设计的基本步骤o说明说明n需求分析和概念设计独立于任何数据库管理系统需求分析和概念设计独立于任何数据库管理系统 n逻辑设计和物理设计与选用的逻辑设计和物理设计与选用的DBMSDBMS密切相关密切相关o数据库设计的准备工作数据库设计的准备工作-选定参加设计的人选定参加设计的人n系统分析人员系统分析人员、数据库设计人员数据库设计人员:自始至终参与数据库:自始至终参与数据库设计。设计。n用户用户和和数据库管理员数据库管理员:主要参加需求分析和数据库的运:主要参加需求分析和数据库的运行维护行维护n应用开发人员应用开发人员(程序员和操作员):在系统实
9、施阶段参(程序员和操作员):在系统实施阶段参与进来,负责编制程序和准备软硬件环境。与进来,负责编制程序和准备软硬件环境。数数据据库库设设计计各各个个阶阶段段的的设设计计描描述述8.1.3 数据库设计的基本步骤o设计一个完善的数据库应用系统往往是上述几个阶段的不设计一个完善的数据库应用系统往往是上述几个阶段的不断反复断反复o把数据库设计和对数据库中数据处理的设计紧密结合起来把数据库设计和对数据库中数据处理的设计紧密结合起来o将这两个方面的需求分析、抽象、设计、实现在各个阶段将这两个方面的需求分析、抽象、设计、实现在各个阶段同时进行,相互参照,相互补充,以完善两方面的设计同时进行,相互参照,相互补
10、充,以完善两方面的设计8.1.3 数据库设计的基本步骤数据库设计不同阶段形成的数据库各级模式数据库设计不同阶段形成的数据库各级模式8.2 数据库需求分析 o分析用户的要求;分析用户的要求;o是数据库设计的起点;是数据库设计的起点;o其结果将直接影响到后面各阶段的设计;其结果将直接影响到后面各阶段的设计;o并影响到最终的数据库系统能否被合理地使并影响到最终的数据库系统能否被合理地使用。用。8.2.1 需求分析的任务o详细调查现实世界要处理的对象(组织、部门、详细调查现实世界要处理的对象(组织、部门、企业等)企业等)o充分了解原系统(手工系统或计算机系统)充分了解原系统(手工系统或计算机系统)o明
11、确用户的各种需求明确用户的各种需求o确定新系统的功能确定新系统的功能o充分考虑今后可能的扩充和改变充分考虑今后可能的扩充和改变8.2.1 需求分析的任务o调查的重点是调查的重点是“数据数据”和和“处理处理”,获得用户,获得用户对数据库要求对数据库要求n信息要求信息要求n处理要求处理要求n安全性与完整性要求安全性与完整性要求8.2.1 需求分析的任务o需求分析的难点需求分析的难点n确定用户最终需求确定用户最终需求o用户缺少计算机知识用户缺少计算机知识o设计人员缺少用户的专业知识设计人员缺少用户的专业知识n解决方法解决方法o设计人员必须不断深入地与用户进行交流设计人员必须不断深入地与用户进行交流8
12、.2.2 需求分析方法o调查需求调查需求n业务现状业务现状n信息源流信息源流n外部要求外部要求:安全性、完整性要求等安全性、完整性要求等o达成共识达成共识o分析表达需求:数据流图、分析表达需求:数据流图、数据字典数据字典8.2.2 需求分析方法o调查用户需求的具体步骤调查用户需求的具体步骤 调查组织机构情况调查组织机构情况 调查各部门的业务活动情况。调查各部门的业务活动情况。在熟悉业务活动的基础上,协助用户明确对新系统的各在熟悉业务活动的基础上,协助用户明确对新系统的各种要求。种要求。确定新系统的边界确定新系统的边界8.3 数据库结构设计 o数据库结构设计包括数据库结构设计包括n设计数据库的概
13、念结构设计数据库的概念结构n设计数据库的逻辑结构设计数据库的逻辑结构n设计数据库的存储结构设计数据库的存储结构8.3.1 概念结构设计 o什么是概念结构设计什么是概念结构设计n将需求分析得到的用户需求抽象为信息结构即概将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计念模型的过程就是概念结构设计n概念结构是各种数据模型的共同基础,它比数据概念结构是各种数据模型的共同基础,它比数据模型更独立于模型更独立于DBMS、更抽象,从而更加稳定、更抽象,从而更加稳定n概念结构设计是整个数据库设计的关键概念结构设计是整个数据库设计的关键8.3.1 概念结构设计现实世界现实世界机器世界机器
14、世界信息世界信息世界需求分析需求分析概念结构设计概念结构设计8.3.1 概念结构设计o概念模型的特点概念模型的特点n有丰富的语义表达能力。有丰富的语义表达能力。n易于交流和理解。易于交流和理解。n易于更改。易于更改。n易于向各种数据模型转换。易于向各种数据模型转换。8.3.1 概念结构设计o概念结构设计的策略概念结构设计的策略n自底向上自底向上。先定义局部应用的概念结构,然后按一。先定义局部应用的概念结构,然后按一定的规则把它们集成起来,从而得到全局概念模型。定的规则把它们集成起来,从而得到全局概念模型。n自顶向下自顶向下:先定义全局概念模型,然后再逐步细化。:先定义全局概念模型,然后再逐步细
15、化。n由里向外由里向外:先定义最重要的核心结构,然后再逐步:先定义最重要的核心结构,然后再逐步向外扩展。向外扩展。n混合策略混合策略。将自顶向下和自底向上结合起来使用。将自顶向下和自底向上结合起来使用。自底向上自底向上自顶向下地进行需求分析自底向上地设计概念结构自顶向下地进行需求分析自底向上地设计概念结构自顶向下自顶向下由里向外由里向外混合策略混合策略o将自顶向下和自底向上相结合将自顶向下和自底向上相结合o用自顶向下策略设计一个全局概念结构的框架用自顶向下策略设计一个全局概念结构的框架o以它为骨架集成由自底向上策略中设计的各局以它为骨架集成由自底向上策略中设计的各局部概念结构部概念结构8.3.
16、1 概念结构设计o采用采用E-R模型方法的概念结构设计模型方法的概念结构设计n设计局部设计局部E-R模型模型 E-R模型的设计内容包括确定局部模型的设计内容包括确定局部E-R模型模型的范围、定义实体、联系以及它们的属性。的范围、定义实体、联系以及它们的属性。n设计全局设计全局E-R模型模型 将所有局部将所有局部E-R图集成为一个全局图集成为一个全局E-R图,图,即全局即全局E-R模型。模型。n优化全局优化全局E-R模型模型自底向上设计概念结构的步骤自底向上设计概念结构的步骤8.3.1 概念结构设计o设计局部设计局部E-R模型模型n概念结构是对现实世界的一种概念结构是对现实世界的一种抽象抽象。n
17、所谓抽象是对实际的人、物、事和概念进行所谓抽象是对实际的人、物、事和概念进行人为处理,抽取所关心的共同特性,忽略非人为处理,抽取所关心的共同特性,忽略非本质细节,并把这些特性用各种概念准确的本质细节,并把这些特性用各种概念准确的加以描述。加以描述。n一般有三种抽象方法:一般有三种抽象方法:o分类分类o概括概括o聚集聚集8.3.1 概念结构设计o分类分类n定义某一类概念作为现实世界中一组对象的类型定义某一类概念作为现实世界中一组对象的类型n抽象了对象抽象了对象值和型值和型之间的之间的“is member of”的语义的语义8.3.1 概念结构设计概括概括定义类型之间的一种子集联系定义类型之间的一
18、种子集联系抽象了类型之间的抽象了类型之间的“is subset of”的语义的语义继承性继承性8.3.1 概念结构设计o聚集聚集n定义某一类型的组成成分定义某一类型的组成成分n抽象了对象内部类型和成分之间抽象了对象内部类型和成分之间“is part of”的语义的语义 8.3.1 概念结构设计复杂的聚集复杂的聚集某一类型的成分仍是一个聚集某一类型的成分仍是一个聚集 8.3.1 概念结构设计o设计分设计分E-R图的步骤图的步骤n选择局部应用选择局部应用n逐一设计分逐一设计分E-R图图1.选择局部应用选择局部应用o在多层的数据流图中选择一个适当层次的数据在多层的数据流图中选择一个适当层次的数据流图
19、,作为设计分流图,作为设计分E-R图的出发点图的出发点 o通常以通常以中层数据流图中层数据流图作为设计分作为设计分E-R图的依据图的依据选择局部应用(续)选择局部应用(续)设计分设计分E-R图的出发点图的出发点 2.逐一设计分逐一设计分E-R图图o任务任务n将各局部应用涉及的数据分别从数据字典中将各局部应用涉及的数据分别从数据字典中抽取出来抽取出来n参照数据流图,标定各局部应用中的实体、参照数据流图,标定各局部应用中的实体、实体的属性、标识实体的码实体的属性、标识实体的码n确定实体之间的联系及其类型(确定实体之间的联系及其类型(1:1,1:n,m:n)逐一设计分逐一设计分E-R图(续)图(续)
20、o两条准则:两条准则:属性不能再具有需要描述的性质。即属性必属性不能再具有需要描述的性质。即属性必须是不可分的数据项,不能再由另一些属性须是不可分的数据项,不能再由另一些属性组成组成属性不能与其他实体具有联系。联系只发生属性不能与其他实体具有联系。联系只发生在实体之间在实体之间逐一设计分逐一设计分E-R图(续)图(续)职称作为一个实体职称作为一个实体逐一设计分逐一设计分E-R图(续)图(续)病房作为一个实体病房作为一个实体8.3.1 概念结构设计o设计全局设计全局E-R模型模型n各个局部视图即分各个局部视图即分E-R图建立好后,还需要对它们图建立好后,还需要对它们进行合并,集成为一个整体的数据
21、概念结构即全局进行合并,集成为一个整体的数据概念结构即全局E-R图。图。n把局部把局部E-R图集成为全局图集成为全局E-R图时,可以采用一次图时,可以采用一次将所有的将所有的E-R图集成在一起的方式,也可以用逐步图集成在一起的方式,也可以用逐步集成、进行累加的方式,即一次只集成少量几个集成、进行累加的方式,即一次只集成少量几个E-R图,这样实现起来会比较容易些。图,这样实现起来会比较容易些。8.3.1 概念结构设计o多个分多个分E-R图一次集成图一次集成 一次集成多个分一次集成多个分E-R图图通常用于局部视图比较简单时通常用于局部视图比较简单时8.3.1 概念结构设计o逐步集成逐步集成用累加的
22、方式一次集成两个分用累加的方式一次集成两个分E-R图图 8.3.1 概念结构设计o集成局部集成局部E-R图的步骤图的步骤n合并合并n修改与重构修改与重构8.3.1 概念结构设计8.3.1 概念结构设计o合并分合并分E-R图,生成初步图,生成初步E-R图图n各分各分E-R图存在冲突图存在冲突o各个分各个分E-R图之间必定会存在许多不一图之间必定会存在许多不一致的地方致的地方n合并分合并分E-R图的主要工作与关键图的主要工作与关键o合理消除各分合理消除各分E-R图的冲突图的冲突8.3.1 概念结构设计o 冲突的种类冲突的种类n属性冲突属性冲突n命名冲突命名冲突n结构冲突结构冲突 属性冲突属性冲突o
23、两类属性冲突两类属性冲突n属性域冲突属性域冲突属性值的类型属性值的类型取值范围取值范围取值集合不同取值集合不同n属性取值单位冲突(如:斤、公斤)属性取值单位冲突(如:斤、公斤)命名冲突命名冲突o两类命名冲突两类命名冲突n同名异义:不同意义的对象在不同的同名异义:不同意义的对象在不同的局部应用中具有相同的名字局部应用中具有相同的名字n异名同义(一义多名):同一意义的异名同义(一义多名):同一意义的对象在不同的局部应用中具有不同的对象在不同的局部应用中具有不同的名字名字 结构冲突结构冲突o三类结构冲突三类结构冲突n同一对象在不同应用中具有不同的抽象(职工同一对象在不同应用中具有不同的抽象(职工实体
24、实体/属性?)属性?)n同一实体在不同分同一实体在不同分E-R图中所包含的属性个数图中所包含的属性个数和属性排列次序不完全相同和属性排列次序不完全相同n实体之间的联系在不同局部视图中呈现不同的实体之间的联系在不同局部视图中呈现不同的类型类型8.3.1 概念结构设计o消除不必要的冗余,设计生成基本消除不必要的冗余,设计生成基本E-R图图合并合并初步初步E-R图图分分E-R图图可能存在冗余的数据可能存在冗余的数据和冗余的实体间联系和冗余的实体间联系基本基本E-R图图消除不必要的冗余消除不必要的冗余8.3.1 概念结构设计o冗余的数据冗余的数据是指可由基本数据导出的数据是指可由基本数据导出的数据冗余
25、的联系冗余的联系是指可由其他联系导出的联系是指可由其他联系导出的联系 o冗余数据和冗余联系容易破坏数据库的完冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难整性,给数据库维护增加困难o消除不必要的冗余后的初步消除不必要的冗余后的初步E-R图称为基本图称为基本E-R图图 8.3.1 概念结构设计o优化全局优化全局E-R模型模型n实体个数尽可能少;实体个数尽可能少;n实体所包含的属性尽可能少;实体所包含的属性尽可能少;n实体间联系无冗余。实体间联系无冗余。8.3.1 概念结构设计o验证整体概念结构验证整体概念结构n对该整体概念结构还必须进行进一步验证,确保它能够对该整体概念结构还必须
展开阅读全文