数据库系统的设计方法_第1页
数据库系统的设计方法_第2页
数据库系统的设计方法_第3页
数据库系统的设计方法_第4页
数据库系统的设计方法_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

1、2第3章 数据库系统的设计方法3.1 3.1 数据库系统设计概述数据库系统设计概述 3.1.1 数据库系统设计的内容数据库系统设计的内容 3.1.2 数据库系统设计应注意的问题数据库系统设计应注意的问题 3.1.3 数据库设计的基本方法数据库设计的基本方法 3.1.4 数据库系统设计的基本步骤数据库系统设计的基本步骤 3.2 3.2 系统需求分析系统需求分析 3.2.1 需求分析的任务和方法需求分析的任务和方法 3.2.2 数据字典及其表示数据字典及其表示 3.3 3.3 数据库逻辑结构的设计数据库逻辑结构的设计 3.3.1 概念结构的特点及设计方法概念结构的特点及设计方法 3.3.2 数据抽

2、象与局部视图设计数据抽象与局部视图设计 3.3.3 视图的集成视图的集成 3.4 3.4 数据库逻辑结构的设计数据库逻辑结构的设计 3.4.1 概念模型向网状模型转换概念模型向网状模型转换 3.4.2 概念模型向关系模型的转换概念模型向关系模型的转换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 数据库系统设计

9、应分数据库系统设计应分6个阶段进行,个阶段进行,这这6个阶段是需求分析、概念结构设计、个阶段是需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据逻辑结构设计、物理结构设计、数据库实施和数据库运行和维护。库实施和数据库运行和维护。 3.1.3 3.1.3 数据库系统设计方法数据库系统设计方法8需求分需求分析阶段析阶段概念设计阶概念设计阶段段逻 辑 设 计 阶逻 辑 设 计 阶段段物 理 设 计 阶物 理 设 计 阶段段数据库数据库实施阶段实施阶段数据库数据库运行、维护阶段运行、维护阶段不满意不满意需求收集和分析需求收集和分析设计概念结构设计概念结构设计逻辑结构设计逻辑结构数据模型优化数据模

10、型优化设计物理结构设计物理结构评价设计,性能预测评价设计,性能预测物理实现物理实现试验性运行试验性运行使用、维护数据库使用、维护数据库不满意不满意应用需求应用需求(数据、处理)(数据、处理) 转换规则、转换规则、DBMS要求和优化要求和优化方法方法 应用要求,应用要求,DBMS详细特征详细特征和限制和限制91.1.需求分析阶段需求分析阶段: :准确了解并分析用户对系统的需要和要求,弄清系统要达到的目标和实现的功能。2. 2. 概念结构设计阶段概念结构设计阶段: :对用户需求进行综合、归纳和抽象,形成一个独立于具体计算机和DBMS的概念模型。3. 3. 逻辑结构设计阶段:逻辑结构设计阶段:将概念

11、结构转换为DBMS所支持的数据模型,并将其性能进行优化。4. 4. 数据库物理设计阶段:数据库物理设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构,包括数据存储结构和存取方法。5. 5. 数据库实施阶段:数据库实施阶段:运用DBMS提供的数据操作语言和宿主语言,根据数据库的逻辑设计和物理设计的结果建立数据库、编制与调试应用程序、组织数据入库并进行系统试运行。6. 6. 数据库运行和维护阶段:数据库运行和维护阶段:不断地对其结构性能进行评价、调整和修改。 103.2.1 3.2.1 需求分析的任务和方法需求分析的任务和方法任务:任务:调查现实世界要处理的对象;了解原系统的概况和发展;明确

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

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

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

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

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

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

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

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

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

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

22、必要的冗余,设计基本E-R图图183.4.1 概念模型向网状模型转换概念模型向网状模型转换不同型实体集及其联系的转换规则不同型实体集及其联系的转换规则1) 每个实体集转换成一个记录。每个实体集转换成一个记录。2) 每个每个1:n的二元联系转换成一个系,系的方向由的二元联系转换成一个系,系的方向由1方实方实体记录指向体记录指向n方实体记录。方实体记录。3) 每个每个m:n的二元联系,在转换时要引入一个连结记录,的二元联系,在转换时要引入一个连结记录,并形成两个系,系的方向由实体记录方指向连结记录方。并形成两个系,系的方向由实体记录方指向连结记录方。1. 4) K(=3)个实体型之间的多元联系,在

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

24、换规则一个实体集转换为关系模型中的一个关系,实体的属性一个实体集转换为关系模型中的一个关系,实体的属性就是关系的属性,实体的码就是关系的码,关系的结构就是关系的属性,实体的码就是关系的码,关系的结构是关系模式。是关系模式。2. 实体集间联系的转换规则实体集间联系的转换规则(1) 1:1联系的转换方法联系的转换方法1) 将将1:1联系转换为一个独立的关系:与该联系相连的联系转换为一个独立的关系:与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体的码以及联系本身的属性均转换为关系的属性,且每个实体的码均是该关系的候选码。且每个实体的码均是该关系的候选码。2) 将将1:1联系与某一

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

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

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

温馨提示

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

评论

0/150

提交评论