数据库 第三章.ppt

上传人:hyn****60 文档编号:82468257 上传时间:2023-03-25 格式:PPT 页数:29 大小:296.50KB
返回 下载 相关 举报
数据库 第三章.ppt_第1页
第1页 / 共29页
数据库 第三章.ppt_第2页
第2页 / 共29页
点击查看更多>>
资源描述

《数据库 第三章.ppt》由会员分享,可在线阅读,更多相关《数据库 第三章.ppt(29页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、数据库原理与应用技术电子工业出版社电子工业出版社教学资源到华信教育资源网站教学资源到华信教育资源网站http:/或或http:/下载。下载。2023/1/31本章教学目标、重点和难点本章教学目标、重点和难点教学目标:使学生了解数据库设计的基本内容和应注意的问题,掌握数据库系统设计方法和基本步骤,精通信息模型向关系模型的转换方法。教学重点:数据库设计方法和数据库设计的基本步骤,需求分析方法,数据库信息模型的设计方法,信息模型向关系模型的转换方法。教学难点:信息模型的设计方法,信息模型向关系模型的转换方法。2第3章数据库设计方法和实例 3.1 数据库系统设计方法数据库系统设计方法3.2 系统需求分

2、析系统需求分析3.3 数据库信息模型的设计数据库信息模型的设计3.4 数据库逻辑结构的设计数据库逻辑结构的设计3.5 数据库物理结构的设计数据库物理结构的设计3.6 数据库的实施和维护数据库的实施和维护3.7 数据库应用系统的设计数据库应用系统的设计 33.1 数据库系统设计方法 3.1.1 3.1.1 数据库系统设计的内容数据库系统设计的内容目标:目标:对于给定的应用环境,建立一个性能良好的、能满足不同用对于给定的应用环境,建立一个性能良好的、能满足不同用户使用要求的、又能被选定的户使用要求的、又能被选定的DBMS所接受的数据库系统模式。按所接受的数据库系统模式。按照该模式建立的数据库系统,

3、应当能够完整地反映现实世界中信息照该模式建立的数据库系统,应当能够完整地反映现实世界中信息及信息之间的联系;能够有效地进行数据存储;能够方便地执行各及信息之间的联系;能够有效地进行数据存储;能够方便地执行各种数据检索和处理操作;并且有利于进行数据维护和数据控制管理种数据检索和处理操作;并且有利于进行数据维护和数据控制管理的工作。的工作。内容:内容:数据库的结构特性设计,数据库的行为特性设计,数据库的数据库的结构特性设计,数据库的行为特性设计,数据库的物理模式设计。将结构特性设计和行为特性设计结合起来,相互参物理模式设计。将结构特性设计和行为特性设计结合起来,相互参照,同步进行,才能较好地达到设

4、计目标。照,同步进行,才能较好地达到设计目标。数据库设计是设计数据库结构特性,为特定应用环境构造出最优的数据模数据库设计是设计数据库结构特性,为特定应用环境构造出最优的数据模型;数据库应用系统设计是设计数据库的行为结构特性,建立能满足各种型;数据库应用系统设计是设计数据库的行为结构特性,建立能满足各种用户对数据库应用需求的功能模型。用户对数据库应用需求的功能模型。4 1.1.数据库的结构特性设计数据库的结构特性设计 先将现实世界中的事物、事物间的联系用先将现实世界中的事物、事物间的联系用E-R图表示,图表示,再将各个分再将各个分E-R图汇总,得出数据库的概念结构模型,最后图汇总,得出数据库的概

5、念结构模型,最后将概念结构模型转化为数据库的逻辑结构模型表示。将概念结构模型转化为数据库的逻辑结构模型表示。2.2.数据库的行为特性设计数据库的行为特性设计 首先要将现实世界中的数据及应用情况用数据流程图首先要将现实世界中的数据及应用情况用数据流程图和数据字典表示,并详细描述其中的数据操作要求(即操和数据字典表示,并详细描述其中的数据操作要求(即操作对象、方法、频度和实时性要求),进而得出系统的功作对象、方法、频度和实时性要求),进而得出系统的功能模块结构和数据库的子模式。能模块结构和数据库的子模式。3.3.数据库的物理模式设计数据库的物理模式设计 根据库结构的动态特性(即数据库应用处理要求)

6、,根据库结构的动态特性(即数据库应用处理要求),在选定的在选定的DBMS环境下,把数据库的逻辑结构模型加以物理环境下,把数据库的逻辑结构模型加以物理实现,从而得出数据库的存储模式和存取方法。实现,从而得出数据库的存储模式和存取方法。5加载试验数据加载试验数据程序说明程序说明调试和运行调试和运行企业企业数据分析数据分析用户业务活动分析用户业务活动分析概念模型设计概念模型设计逻辑模式设计逻辑模式设计物理模式设计物理模式设计用户子模式设计用户子模式设计功能模型功能模型事务设计事务设计应用程序设计应用程序设计性能考核性能考核满意满意投入运行维护投入运行维护加载数据库加载数据库不不是是61.1.考虑到计

7、算机硬件、软件和干件的实际情况考虑到计算机硬件、软件和干件的实际情况(1)数据库系统的硬件条件数据库系统的硬件条件 根据其数据存储设备、网络和通信设备、计算机性能等硬件条件设根据其数据存储设备、网络和通信设备、计算机性能等硬件条件设计数据库的规模、数据存储方式、分布结构以及数据通讯方式。计数据库的规模、数据存储方式、分布结构以及数据通讯方式。(2)DBMS和主语言系统的特点和主语言系统的特点 在数据库设计前,应当选择合适的在数据库设计前,应当选择合适的DBMS和主语言系统,使之适合和主语言系统,使之适合数据库系统的要求。数据库系统的要求。(3)数据库用户的技术水平和管理水平数据库用户的技术水平

8、和管理水平 应当让应当让DBA充分参与设计数据库的工作,使之对数据库设计过程的充分参与设计数据库的工作,使之对数据库设计过程的每个细节都了解的比较清楚。每个细节都了解的比较清楚。2.2.使结构特性设计和行为特性设计紧密结合使结构特性设计和行为特性设计紧密结合 数据库设计过程是一种自上而下的、逐步逼近设计目标的过程,是数据库设计过程是一种自上而下的、逐步逼近设计目标的过程,是结构设计和行为设计分离设计、相互参照、反复探寻的过程。结构设计和行为设计分离设计、相互参照、反复探寻的过程。3.1.23.1.2 数据库系统设计应注意的问题数据库系统设计应注意的问题7 数据库系统设计应分数据库系统设计应分6

9、个阶段进行,这个阶段进行,这6个阶段是需求分析、概念结构设计、个阶段是需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据逻辑结构设计、物理结构设计、数据库实施和数据库运行和维护。库实施和数据库运行和维护。3.1.3 3.1.3 数据库设计的基本方法和步骤数据库设计的基本方法和步骤 1.1.需求分析阶段需求分析阶段:准确了解并分析用户对系统的需要和要求,弄清系统要达到的目标和实现的功能。2.2.概念结构设计阶段概念结构设计阶段:对用户需求进行综合、归纳和抽象,形成一个独立于具体计算机和DBMS的概念模型。3.3.逻辑结构设计阶段:逻辑结构设计阶段:将概念结构转换为DBMS所支持的数据模型,

10、并将其性能进行优化。4.4.数据库物理设计阶段:数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构,包括数据存储结构和存取方法。5.5.数据库实施阶段:数据库实施阶段:运用DBMS提供的数据操作语言和宿主语言,根据数据库的逻辑设计和物理设计的结果建立数据库、编制与调试应用程序、组织数据入库并进行系统试运行。6.6.数据库运行和维护阶段:数据库运行和维护阶段:不断地对其结构性能进行评价、调整和修改。8需求分需求分析阶段析阶段概念设计阶概念设计阶段段逻逻 辑辑 设设 计计 阶阶段段物物 理理 设设 计计 阶阶段段数据库数据库实施阶段实施阶段数据库数据库运行、维护阶段运行、维护阶段不

11、满意不满意需求收集和分析需求收集和分析设计概念结构设计概念结构设计逻辑结构设计逻辑结构数据模型优化数据模型优化设计物理结构设计物理结构评价设计,性能预测评价设计,性能预测物理实现物理实现试验性运行试验性运行使用、维护数据库使用、维护数据库不满意不满意应用需求应用需求(数据、处理)(数据、处理)转换规则、转换规则、DBMS要求和优化要求和优化方法方法 应用要求,应用要求,DBMS详细特征详细特征和限制和限制93.2.1 3.2.1 需求分析的任务和方法需求分析的任务和方法任务:任务:调查现实世界要处理的对象;了解原系统的概况和发展;明确用调查现实世界要处理的对象;了解原系统的概况和发展;明确用户

12、需求;收集基础数据及其处理方法;确定新系统的功能和边界。户需求;收集基础数据及其处理方法;确定新系统的功能和边界。1.1.系统需求调查的内容系统需求调查的内容(1)数据库中的信息内容:数据库中的信息内容:数据库中需存储哪些数据,包括用户将从数据库中需存储哪些数据,包括用户将从数据库中直接获得或间接导出的信息内容和性质。数据库中直接获得或间接导出的信息内容和性质。(2)数据处理内容:数据处理内容:用户要完成什么数据处理功能;用户对数据处理用户要完成什么数据处理功能;用户对数据处理响应时间的要求;数据处理的工作方式。响应时间的要求;数据处理的工作方式。(3)数据安全性和完整性要求:数据安全性和完整

13、性要求:数据的保密措施和存取控制要求;数数据的保密措施和存取控制要求;数据自身的或数据间的约束限制。据自身的或数据间的约束限制。3.2 系统需求分析 分析用户的要求,将分析结果用数据流程图和数据字典表示。分析用户的要求,将分析结果用数据流程图和数据字典表示。10(1)了解现实世界的组织机构情况了解现实世界的组织机构情况 弄清所设计的数据库系统与哪些部门相关,这些部门以及下属各个单弄清所设计的数据库系统与哪些部门相关,这些部门以及下属各个单位的联系和职责是什么。位的联系和职责是什么。(2)了解相关部门的业务活动情况了解相关部门的业务活动情况各部门需要输入和使用什么数据;在部门中是如何加工处理这些

14、数据各部门需要输入和使用什么数据;在部门中是如何加工处理这些数据的;各部门需要输出什么信息;输出到什么部门;输出数据的格式是的;各部门需要输出什么信息;输出到什么部门;输出数据的格式是什么。什么。(3)确定新系统的边界确定新系统的边界哪些功能现在就由计算机完成;哪些功能将来准备让计算机完成;哪哪些功能现在就由计算机完成;哪些功能将来准备让计算机完成;哪些功能或活动由人工完成。由计算机完成的功能就是新系统应该实现些功能或活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。的功能。2.系统需求的调查步骤11 (1)跟班作业跟班作业:数据库设计人员亲身参加业务工作。数据库设计人员亲身参加业务

15、工作。(2)开调查会开调查会:通过与用户座谈的方式来了解业务活动情通过与用户座谈的方式来了解业务活动情况及用户需求。况及用户需求。(3)请专人介绍请专人介绍:请业务熟练的专家或用户介绍业务专业请业务熟练的专家或用户介绍业务专业知识和业务活动情况,设计人员从中了解并询问相关问题。知识和业务活动情况,设计人员从中了解并询问相关问题。(4)询问询问:对某些调查中的问题,可以找专人询问。对某些调查中的问题,可以找专人询问。(5)设计调查表请用户填写设计调查表请用户填写:数据库设计人员可以提前设数据库设计人员可以提前设计一个合理的、详细的业务活动及数据要求调查表,并将计一个合理的、详细的业务活动及数据要

16、求调查表,并将此表发给相关的用户。此表发给相关的用户。(6)查阅现实世界的数据记录查阅现实世界的数据记录:查阅与原系统有关的数据查阅与原系统有关的数据记录,包括帐本、档案或文献等。记录,包括帐本、档案或文献等。3.3.系统需求调查的方法系统需求调查的方法124.4.系统需求分析方法系统需求分析方法常用的有结构化分析方法常用的有结构化分析方法:1)自自顶顶向向下下的的设设计计方方法法。先先定定义义全全局局概概念念结结构构的的框框架架,然然后逐步细化为完整的全局概念结构。后逐步细化为完整的全局概念结构。2)自自底底向向上上的的设设计计方方法法。先先定定义义各各局局部部应应用用的的概概念念结结构构,

17、后将它们集成,得到全局概念结构。后将它们集成,得到全局概念结构。3)逐逐步步扩扩张张的的设设计计方方法法。先先定定义义最最重重要要的的核核心心部部分分,后后向向外扩充,生成其他概念结构。外扩充,生成其他概念结构。4)混混合合策策略略设设计计的的方方法法。即即采采用用自自顶顶向向下下与与自自底底向向上上相相结结合的方法。合的方法。13 数据字典是各类数据描述的集合数据字典是各类数据描述的集合1.1.数据项:数据项是不可再分的数据单位。数据项:数据项是不可再分的数据单位。2.2.数据结构:数据结构反映了数据之间的组合关系。数据结构:数据结构反映了数据之间的组合关系。3.3.数据流:据流是数据结构在

18、系统内传输的路径。数据流:据流是数据结构在系统内传输的路径。4.4.数据存储:数据存储是数据及其结构停留或保存数据存储:数据存储是数据及其结构停留或保存 的地的地方,也是数据流的来源和去向之一。数据存储可以是手方,也是数据流的来源和去向之一。数据存储可以是手工文档、手工凭单或计算机文档。工文档、手工凭单或计算机文档。5.5.处理过程:用判定表或判定树来描述。处理过程:用判定表或判定树来描述。3.2.2 3.2.2 数据字典及其表示数据字典及其表示14 D1 在校学生 D3 学生学籍表学生科 删除记录 a P1 P2 退学通知 学生学生 退学处理 毕业处理 c 派遣证 c 学生科各系 D2 成绩

19、记录 D4 学分记录 a b 一个数据流程图的实例 153.3 概念结构的设计3.3.13.3.1 概念结构的特点及设计方法3.3.2 数据抽象与局部视图设计1.三种数据抽象方法三种数据抽象方法(1)分类分类:定义类概念作为现实世界中对象的类型,这些对象具定义类概念作为现实世界中对象的类型,这些对象具有某些共同的特性和行为。在有某些共同的特性和行为。在E-R模型中,实体集是该抽象。模型中,实体集是该抽象。(2)聚集:定义某一类型的组成部分,它抽象了对象内部的类型聚集:定义某一类型的组成部分,它抽象了对象内部的类型和和“组成部分组成部分”的语义。的语义。(3)概括:定义类型之间的一种子集联系,它

20、抽象了类型之间的概括:定义类型之间的一种子集联系,它抽象了类型之间的“所属所属”的语义。的语义。2.设计分设计分E-R图图概念结构设计是利用抽象机制对需求分析阶段收集到的数据分概念结构设计是利用抽象机制对需求分析阶段收集到的数据分类、组织(聚集),形成实体集、属性和码,确定实体集之间类、组织(聚集),形成实体集、属性和码,确定实体集之间的联系类型,进而设计分的联系类型,进而设计分E-R图。图。163.3.3 视图的集成1.合并分合并分E-R图,生成初步图,生成初步E-R图图(1)属性冲突属性冲突1)属性域冲突,即属性值的类型、取值范围或取值集合不同。属性域冲突,即属性值的类型、取值范围或取值集

21、合不同。2)属性取值单位冲突。属性取值单位冲突。(2)命名冲突命名冲突1)同名异义冲突:不同的对象在不同的局部应用中具有相同的名字。同名异义冲突:不同的对象在不同的局部应用中具有相同的名字。2)异名同义冲突:意义相同的对象在不同的应用中有不同的名字。异名同义冲突:意义相同的对象在不同的应用中有不同的名字。(3)结构冲突结构冲突1)同一对象在不同的应用中具有不同的抽象。同一对象在不同的应用中具有不同的抽象。2)同一实体在不同分同一实体在不同分E-R图中的属性组成不一致图中的属性组成不一致.3)实体之间的联系在不同的分实体之间的联系在不同的分E-R图中呈现不同的类型。图中呈现不同的类型。2.消除不

22、必要的冗余,设计基本消除不必要的冗余,设计基本E-R图图173.4 数据库逻辑结构的设计3.4.1 概念模型向网状模型转换概念模型向网状模型转换1.不同型实体集及其联系的转换规则不同型实体集及其联系的转换规则1)每个实体集转换成一个记录。每个实体集转换成一个记录。2)每个每个1:n的二元联系转换成一个系,系的方向由的二元联系转换成一个系,系的方向由1方实体方实体记录指向记录指向n方实体记录。方实体记录。3)每个每个m:n的二元联系,在转换时要引入一个连结记录,的二元联系,在转换时要引入一个连结记录,并形成两个系,系的方向由实体记录方指向连结记录方。并形成两个系,系的方向由实体记录方指向连结记录

23、方。4)K(=3)个实体型之间的多元联系,在转换时也引入个实体型之间的多元联系,在转换时也引入一个连结记录,并将联系转换成一个连结记录,并将联系转换成K个实体记录型和连结记个实体记录型和连结记录型之间的录型之间的K个系,系的方向均为实体型指向连结记录。个系,系的方向均为实体型指向连结记录。18转换实例 部门部门-职工职工1n部门职工部门-职工系学生选课课程mn学生课程选课学 生-选课课 程-选课(a)1:n联系的转换实例联系的转换实例 (b)m:n联系的转换实例联系的转换实例 19 多实体型之间多元联系转换实例部件部件工程工程部件部件-工程工程-供应供应供应供应mnp部件部件工程工程供应供应部

24、件部件-工程工程-供应供应Set1Set2Set3203.4.2 概念模型向关系模型的转换1.实体集的转换规则实体集的转换规则一个实体集转换为关系模型中的一个关系,实体的属性就一个实体集转换为关系模型中的一个关系,实体的属性就是关系的属性,实体的码就是关系的码,关系的结构是关是关系的属性,实体的码就是关系的码,关系的结构是关系模式。系模式。2.实体集间联系的转换规则实体集间联系的转换规则(1)1:1联系的转换方法联系的转换方法1)将将1:1联系转换为一个独立的关系:与该联系相连的各联系转换为一个独立的关系:与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,且每实体的码以及联系本身的

25、属性均转换为关系的属性,且每个实体的码均是该关系的候选码。个实体的码均是该关系的候选码。2)将将1:1联系与某一端实体集所对应的关系合并,则需要联系与某一端实体集所对应的关系合并,则需要在被合并关系中增加属性,其新增的属性为联系本身的属在被合并关系中增加属性,其新增的属性为联系本身的属性和与联系相关的另一个实体集的码。性和与联系相关的另一个实体集的码。21【例】将图中E-R图转换为关系模型。方案方案1:联系形成的关系独立存在:联系形成的关系独立存在:职工(职工号,姓名,年龄);职工(职工号,姓名,年龄);产品(产品号,产品名,价格);产品(产品号,产品名,价格);负责(职工号,产品号)负责(职

26、工号,产品号).方方案案2:“负负责责”与与“职职工工”两两关关系系合合并:并:职职工工(职职工工号号,姓姓名名,年年龄龄,产产品品号号);产品(产品号,产品名,价格);产品(产品号,产品名,价格);方方案案3:“负负责责”与与“产产品品”两两关关系系合合并:并:职工(职工号,姓名,年龄);职工(职工号,姓名,年龄);产品(产品号,产品名,价格,职工产品(产品号,产品名,价格,职工号)号).负责1 产品产品号产品名价格1 职工职工号姓名年龄22(2)1:n联系的转换方法 一种方法是将联系转换为一个独立的关系,其一种方法是将联系转换为一个独立的关系,其关系的属性由与该联系相连的各实体集的码以及联

27、关系的属性由与该联系相连的各实体集的码以及联系本身的属性组成,而该关系的码为系本身的属性组成,而该关系的码为n端实体集的端实体集的码;码;另一种方法是在另一种方法是在n端实体集中增加新属性,新属端实体集中增加新属性,新属性由联系对应的性由联系对应的1端实体集的码和联系自身的属性端实体集的码和联系自身的属性构成,新增属性后原关系的码不变。构成,新增属性后原关系的码不变。23【例】将含有1:n联系的E-R图转换为关系模型。方案方案1:联系形成的关系独立存在。:联系形成的关系独立存在。仓库(仓库号,地点,面积);仓库(仓库号,地点,面积);产品(产品号,产品名,价格);产品(产品号,产品名,价格);

28、仓储(仓库号,产品号,数量)仓储(仓库号,产品号,数量).方案方案2:联系形成的关系与:联系形成的关系与n端对象合并。端对象合并。仓库(仓库号,地点,面积);仓库(仓库号,地点,面积);产产品品(产产品品号号,产产品品名名,价价格格,仓仓库号,数量)库号,数量).仓储n 产品产品号产品名价格1 仓库仓库号地点面积数量24(3)m:n联系的转换方法 在向关系模型转换时,一个在向关系模型转换时,一个m:n联系转换为一联系转换为一个关系。转换方法为:与该联系相连的各实体集个关系。转换方法为:与该联系相连的各实体集的码以及联系本身的属性均转换为关系的属性,的码以及联系本身的属性均转换为关系的属性,新关

29、系的码为两个相连实体码的组合(该码为多新关系的码为两个相连实体码的组合(该码为多属性构成的组合码)。属性构成的组合码)。25【例】将图中含有m:n二元联系的E-R图,转换为关系模型。转换的关系模型为:转换的关系模型为:学生(学生(学号学号,姓名,年龄,性别);,姓名,年龄,性别);课课程程(课课程程号号,课课程程名名,学学时时数数);选修(选修(学号,课程号学号,课程号,成绩),成绩).学生学号姓名年龄性别 课程课程号课程名学时数选修mn成绩26(4)三个或三个以上实体集间的多元联系的转换方法1)对于一对多的多元联系,转换为关系模型的方对于一对多的多元联系,转换为关系模型的方法是修改法是修改1

30、端实体集对应的关系,即将与联系相端实体集对应的关系,即将与联系相关的其他实体集的码和联系自身的属性作为新属关的其他实体集的码和联系自身的属性作为新属性加入到性加入到1端实体集中。端实体集中。2)对于多对多的多元联系,转换为关系模型的方对于多对多的多元联系,转换为关系模型的方法是新建一个独立的关系,该关系的属性为多元法是新建一个独立的关系,该关系的属性为多元联系相连的各实体的码以及联系本身的属性,码联系相连的各实体的码以及联系本身的属性,码为各实体码的组合。为各实体码的组合。27【例】将图中含有多实体集间的多对多联系的E-R图转换为关系模型。供应商(供应商号,供应商名,地址);供应商(供应商号,供应商名,地址);零件(零件号,零件名,单价);零件(零件号,零件名,单价);产品(产品号,产品名,型号);产品(产品号,产品名,型号);供应(供应商号,零件号,产品号,数量)供应(供应商号,零件号,产品号,数量).供应商供应商号供应商名地址 零件零件号零件名单价产品产品号产品名型号供应nmp数量2829

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

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com