




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数据库系统设计的步骤和方法数据库系统设计的步骤和方法3.1 3.1 数据库系统设计概述数据库系统设计概述 3.1.1 3.1.1 数据库系统设计的内容数据库系统设计的内容 3.1.2 3.1.2 数据库系统设计应注意的问题数据库系统设计应注意的问题 3.1.3 3.1.3 数据库系统设计方法数据库系统设计方法 3.1.4 3.1.4 数据库设计的基本步骤数据库设计的基本步骤 3.2 3.2 系统需求分析系统需求分析 3.2.1 3.2.1 需求分析的任务和方法需求分析的任务和方法 3.2.2 3.2.2 数据字典及其表示数据字典及其表示 3.3 3.3 数据库概念结构数据库概念结构设计设计3.
2、4 3.4 数据库逻辑结构的设计数据库逻辑结构的设计3.5 3.5 数据库的物理设计数据库的物理设计3.6 3.6 数据库的实施和试运行数据库的实施和试运行3.7 3.7 数据库的运行和维护数据库的运行和维护一一. .数据库系统设计的内容数据库系统设计的内容目标:目标:对于给定的应用环境,建立一个性能良好的、能满足不同用户使用要求的、又能被选定的DBMS所接受的数据库系统模式。按照该数据库系统模式建立的数据库系统,应当能够完整地反映现实世界中信息及信息之间的联系;能够有效地进行数据存储;能够方便地执行各种数据检索和处理操作;并且有利于进行数据维护和数据控制管理的工作。3.1 3.1 数据库系统
3、设计概述数据库系统设计概述一一. .数据库系统设计的内容数据库系统设计的内容数据库设计:数据库应用系统设计:数据库系统的设计 设计数据库的行为特性,建立能满足各种用户对数据库应用需求的功能模型。 设计数据库结构特性和物理模式,为特定应用环境构造出最优的数据模型; 1. 1. 数据库的结构特性设计数据库的结构特性设计 先将现实世界中的事物、事物间的联系用E-RE-R图表示,再将各个分E-RE-R图汇总,得出数据库的概念结构模型,最后将概念结构模型转化为数据库的逻辑结构模型表示。2. 2. 数据库的物理模式设计数据库的物理模式设计 根据库结构的动态特性(即数据库应用处理要求),在选定的DBMSDB
4、MS环境下,把数据库的逻辑结构模型加以物理实现,从而得出数据库的存储模式和存取方法。3.3.数据库的行为特性设计数据库的行为特性设计 首先要将现实世界中的数据及应用情况用数据流程图和数据字典表示,并详细描述其中的数据操作要求(即操作对象、方法、频度和实时性要求),进而得出系统的功能模块结构和数据库的子模式。1.根据计算机硬件、DBMS和主语言系统等软件的特点和数据库用户的技术水平和管理水平等情况进行数据库系统设计;2.2.使结构特性设计和行为特性设计紧密结合使结构特性设计和行为特性设计紧密结合 数据库设计过程是一种自上而下的、逐步逼近设计目标的过程,是结构设计和行为设计分离设计、相互参照、反复
5、探寻的过程。二二. . 数据库系统设计应注意的问题数据库系统设计应注意的问题加载试验数据加载试验数据程序说明程序说明调试和运行调试和运行企业企业数据分析数据分析用户业务活动分析用户业务活动分析概念模型设计概念模型设计逻辑模式设计逻辑模式设计物理模式设计物理模式设计用户子模式设计用户子模式设计功能模型功能模型事务设计事务设计应用程序设计应用程序设计性能考核性能考核满意满意投入运行维护投入运行维护加载数据库加载数据库不不是是数据库设计过程数据库设计过程 三三. . 数据库系统设计方法和基本步骤数据库系统设计方法和基本步骤 数据库系统的设计一般采用工程的原理和方法来进行,一般将设计分6个阶段进行,这
6、6个阶段是:需求分析需求分析概念结构设计概念结构设计逻辑结构设计逻辑结构设计物理结构设计物理结构设计数据库实施数据库实施数据库运行和维护数据库运行和维护准确了解并分析用户对系统的需准确了解并分析用户对系统的需要和要求,弄清系统要达到的目标和实现要和要求,弄清系统要达到的目标和实现的功能,是整个设计过程的的功能,是整个设计过程的基础基础,是,是最困最困难难、最耗费最耗费时间的一步。时间的一步。对用户需求进行综合、归纳和抽对用户需求进行综合、归纳和抽象,形成一个象,形成一个独立独立于具体计算机和于具体计算机和DBMSDBMS的的概念模型概念模型,是整个数据库设计的,是整个数据库设计的关键关键。将概
7、念结构转换为将概念结构转换为DBMSDBMS所支持的所支持的数据模型数据模型,并将其性能进行优化。,并将其性能进行优化。 三三. . 数据库系统设计方法和基本步骤数据库系统设计方法和基本步骤 数据库系统的设计一般采用工程的原理和方法来进行,一般将设计分6个阶段进行,这6个阶段是:需求分析需求分析概念结构设计概念结构设计逻辑结构设计逻辑结构设计物理结构设计物理结构设计数据库实施数据库实施数据库运行和维护数据库运行和维护为逻辑数据模型选取一个最适合为逻辑数据模型选取一个最适合应用环境的应用环境的物理结构物理结构,包括数据存储结构,包括数据存储结构和存取方法。和存取方法。运用运用DBMSDBMS提供
8、的数据操作语言和提供的数据操作语言和宿主语言,根据数据库的逻辑设计和物宿主语言,根据数据库的逻辑设计和物理设计的结果理设计的结果建立数据库建立数据库、编制与调试编制与调试应用程序应用程序、组织数据入库组织数据入库并进行并进行系统试系统试运行运行。不断地对其结构性能进不断地对其结构性能进行评价、调整和修改。行评价、调整和修改。需求分需求分析阶段析阶段概念设计阶概念设计阶段段逻 辑 设 计 阶逻 辑 设 计 阶段段物 理 设 计 阶物 理 设 计 阶段段数据库数据库实施阶段实施阶段数据库数据库运行、维护阶段运行、维护阶段不满意不满意需求收集和分析需求收集和分析设计概念结构设计概念结构设计逻辑结构设
9、计逻辑结构数据模型优化数据模型优化设计物理结构设计物理结构评价设计,性能预测评价设计,性能预测物理实现物理实现试验性运行试验性运行使用、维护数据库使用、维护数据库不满意不满意应用需求应用需求(数据、处理)(数据、处理) 转换规则、转换规则、DBMS要求和优化要求和优化方法方法 应用要求,应用要求,DBMS详细特征详细特征和限制和限制IPO表输入:输出:处理:CreatLoadMain()ifthenend分区1分区2概念结概念结构设计构设计逻辑逻辑结构结构设计设计物理物理设计设计设 计设 计阶阶 段段 设设 计计 描描 述述数数 据据处处 理理需求需求分分 析析 数据字典、全系统中数据项、数据
10、字典、全系统中数据项、 数据流、数据存储的描述数据流、数据存储的描述数据流图和判定表(判定树)、数据字数据流图和判定表(判定树)、数据字典中处理过程的描述典中处理过程的描述 概念模型(概念模型(E-R图)图) 数据字典数据字典 系统说明书包括:系统说明书包括: 新系统要求、新系统要求、 方案和概图方案和概图 反映新系统信息反映新系统信息 流的数据流图流的数据流图 某种数据模型某种数据模型 关系关系 非关系非关系 系统结构图系统结构图 (模块结构)(模块结构) 存储安排存储安排 方法选择方法选择 存取路径建立存取路径建立 模块设计模块设计 IPO表表实施实施阶段阶段 编写模式编写模式 装入数据装
11、入数据 数据库试运行数据库试运行 程序编码、程序编码、 编译联结、编译联结、 测试测试运行、运行、维护维护 性能监测、转储性能监测、转储/恢复恢复 数据库重组和重构数据库重组和重构 新旧系统转换、运行、维护(修正性、适应性、新旧系统转换、运行、维护(修正性、适应性、改善性维护)改善性维护)设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。3.2.1 3.2.1 需求分析的任务和方法需求分析的任务和方法任务任务:调查现实世界要处理的对象;调查现实世界要处理的对象;了解原系统的概况和发展前景;了解原系统的概况和发展前景;明确用户的各种需求;明确用户的各种需求;收集基础数据及其处理方法;收集
12、基础数据及其处理方法;确定新系统的功能和边界确定新系统的功能和边界; ;将分析结果用将分析结果用数据流图数据流图和和数据字典数据字典表示。表示。3.2.1 3.2.1 需求分析的任务和方法需求分析的任务和方法1. 1. 系统需求调查的系统需求调查的内容内容(1) (1) 数据库中的数据库中的信息内容信息内容 数据库中需存储哪些数据,包括用户将从数据数据库中需存储哪些数据,包括用户将从数据库中直接获得或间接导出的信息内容和性质。库中直接获得或间接导出的信息内容和性质。(2) (2) 数据数据处理内容处理内容 用户要完成什么数据处理功能;用户对数据处用户要完成什么数据处理功能;用户对数据处理响应时
13、间的要求;数据处理的工作方式。理响应时间的要求;数据处理的工作方式。(3) (3) 数据数据安全性安全性和和完整性完整性要求要求 数据的保密措施和存取控制要求;数据自身的数据的保密措施和存取控制要求;数据自身的或数据间的约束限制。或数据间的约束限制。2. 2. 系统需求的调查步骤系统需求的调查步骤(1)(1)了解现实世界的了解现实世界的组织机构组织机构情况情况 弄清所设计的数据库系统与哪些部门相关,这弄清所设计的数据库系统与哪些部门相关,这些部门以及下属各个单位的联系和职责是什么。些部门以及下属各个单位的联系和职责是什么。(2) (2) 了解相关部门的了解相关部门的业务活动业务活动情况情况 各
14、部门需要输入和使用什么数据;在部门中是各部门需要输入和使用什么数据;在部门中是如何加工处理这些数据的;各部门需要输出什么信如何加工处理这些数据的;各部门需要输出什么信息;输出到什么部门;输出数据的格式是什么。息;输出到什么部门;输出数据的格式是什么。(3) (3) 确定新系统的确定新系统的边界边界 哪些功能现在就由计算机完成;哪些功能将来哪些功能现在就由计算机完成;哪些功能将来准备让计算机完成;哪些功能或活动由人工完成。准备让计算机完成;哪些功能或活动由人工完成。由计算机完成的功能就是新系统应该实现的功能。由计算机完成的功能就是新系统应该实现的功能。3. 3. 系统需求调查的方法系统需求调查的
15、方法(1) (1) 跟班作业跟班作业 数据库设计人员亲身参加业务工作。数据库设计人员亲身参加业务工作。(2) (2) 开调查会开调查会 通过与用户座谈的方式来了解业务活动情况及用户需求。通过与用户座谈的方式来了解业务活动情况及用户需求。(3) (3) 请专人介绍请专人介绍 请业务熟练的专家或用户介绍业务专业知识和业务活动情请业务熟练的专家或用户介绍业务专业知识和业务活动情况,设计人员从中了解并询问相关问题况,设计人员从中了解并询问相关问题。(4) (4) 询问询问 对某些调查中的问题,可以找专人询问。对某些调查中的问题,可以找专人询问。(5) (5) 设计调查表请用户填写设计调查表请用户填写
16、数据库设计人员可以提前设计一个合理的、详细的业务活数据库设计人员可以提前设计一个合理的、详细的业务活动及数据要求调查表,并将此表发给相关的用户。动及数据要求调查表,并将此表发给相关的用户。 (6) (6) 查阅现实世界的数据记录查阅现实世界的数据记录 查阅与原系统有关的数据记录,包括帐本、档案或文献等。查阅与原系统有关的数据记录,包括帐本、档案或文献等。4. 4. 系统需求分析方法系统需求分析方法分析和表达用户的需求分析和表达用户的需求的常用方法的常用方法: 自顶向下的结构化分析方法(自顶向下的结构化分析方法(Structured Structured AnalysisAnalysis,简称简
17、称SASA方法)。方法)。SASA方法从最上层的系统组织机构入手,采用方法从最上层的系统组织机构入手,采用逐层分逐层分解解的方式分析系统,并用的方式分析系统,并用数据流图和数据字典数据流图和数据字典描述描述系统。系统。3.2.3.2.2 2 数据流图和数据字典数据流图和数据字典(1)DFD的基本成分的基本成分( (a)a)外部实体外部实体( (external agent)external agent)( (b)b)加工加工( (process)process)( (c)c)数据存储数据存储( (data store)data store)( (d)d)数据流数据流( (data flow)d
18、ata flow)或或或或或或D1在校学生D3学生学籍表学生科删除记录aP1P2退学通知学生学生退学处理毕业处理c派遣证c学生科各系D2成绩记录D4学分记录ab一个数据流图的实例一个数据流图的实例 (1)(1)确定系统的外部项,从而确定系统与外部环境的分界线;确定系统的外部项,从而确定系统与外部环境的分界线;(2)(2)确定系统在正常运行时的输入和输出;确定系统在正常运行时的输入和输出;(3)(3)确定系统的查询要求,即要定义两种数据流:一种是外确定系统的查询要求,即要定义两种数据流:一种是外界向系统发出查询要求的数据流,另一种是系统响应后给界向系统发出查询要求的数据流,另一种是系统响应后给出
19、回答的数据流;出回答的数据流;(4)(4)对对DFDDFD中的每一个数据处理,逐层向下扩展出详细的数中的每一个数据处理,逐层向下扩展出详细的数据流图,每一层数据流图中的数据处理一般不超过据流图,每一层数据流图中的数据处理一般不超过5 5个。下个。下一层一层DFDDFD中的输入和输出要和上一层中的输入和输出要和上一层DFDDFD相应的数据流相对相应的数据流相对应。应。 数据流图不反映时间的顺序,也不反映判断和控制条数据流图不反映时间的顺序,也不反映判断和控制条件,只反映数据的流向、自然的逻辑过程和必要的逻辑数件,只反映数据的流向、自然的逻辑过程和必要的逻辑数据存贮。据存贮。假设一家工厂的采购部每
20、天需要一张定货报表,假设一家工厂的采购部每天需要一张定货报表,报表按零件编号排序,表中列出所有需要再次定货报表按零件编号排序,表中列出所有需要再次定货的零件。的零件。每个需要再次定货的零件应该包含下述数据:每个需要再次定货的零件应该包含下述数据:零件编号,零件名称,定货数量,价格,主要供应零件编号,零件名称,定货数量,价格,主要供应者,次要供应者。者,次要供应者。零件入库或出库称为事务,通过放在仓库中的零件入库或出库称为事务,通过放在仓库中的CRTCRT终端把事务报告给定货系统。当某种零件的库终端把事务报告给定货系统。当某种零件的库存数量少于库存量临界值时就应该再次定货。存数量少于库存量临界值
21、时就应该再次定货。 例:例:数据的数据的源点源点和和终点终点: 从从“采购部每天需要一张定货报表采购部每天需要一张定货报表”可以知道,可以知道,采购员采购员是数据是数据终点终点; 而而“通过放在仓库中的通过放在仓库中的CRTCRT终端把事务报告给终端把事务报告给定货系统定货系统”可以知道,可以知道,仓库管理员仓库管理员是数据是数据源点源点。数据流数据流: 系统把定货报表送给采购部,因此系统把定货报表送给采购部,因此定货报表定货报表是是一个数据流;一个数据流; 事务需要从仓库送到系统中,显然事务需要从仓库送到系统中,显然事务事务是另一是另一个数据流。个数据流。处理处理: 由于由于“采购部需要报表
22、采购部需要报表”,因此必须有一个用于,因此必须有一个用于产生产生报表报表的处理。的处理。 事务的后果是改变零件库存量,然而任何改变数据的事务的后果是改变零件库存量,然而任何改变数据的操作都是处理,因此操作都是处理,因此对事务进行的加工对事务进行的加工是另一个处理。是另一个处理。数据存储数据存储: 产生报表和处理事务这两个处理在时间上明显不匹配:产生报表和处理事务这两个处理在时间上明显不匹配:每当有一个事务发生时立即处理它,然而每天只产生一次每当有一个事务发生时立即处理它,然而每天只产生一次定货报表。因此,用来产生定货报表的数据必须存放一段定货报表。因此,用来产生定货报表的数据必须存放一段时间,
23、也就是应该有一个数据存储来存放它时间,也就是应该有一个数据存储来存放它定货信息定货信息。 “ “当某种零件的库存数量少于库存量临界值时就应该当某种零件的库存数量少于库存量临界值时就应该再次定货再次定货”则表示应该有一个数据存储用于保存库存数量则表示应该有一个数据存储用于保存库存数量和库存量临界值和库存量临界值库存清单库存清单 。把处理事务的功能进一步分解后的数据流图把处理事务的功能进一步分解后的数据流图例:例:假设某图书馆要求数据库支持以下数据处理假设某图书馆要求数据库支持以下数据处理: :(1)(1)办理借书证办理借书证; ;(2)(2)查询馆藏图书查询馆藏图书; ;(3)(3)查逾期读者。
24、查逾期读者。读者图书借阅管理系统读者业务请求 查询结果 服务请求 借书证 图书馆管理员读者属性读者属性:借书证号,姓名,性别,年龄,工作单位,文化程度,通讯地址借书证号,姓名,性别,年龄,工作单位,文化程度,通讯地址图书属性图书属性:分类号,编号,书名,作者,出版社,单价,库存量分类号,编号,书名,作者,出版社,单价,库存量读者读者图书图书m n借阅借阅借阅日期借阅日期归还标志归还标志 数据字典是各类数据描述的集合,数据字典是进行详细的数据字典是各类数据描述的集合,数据字典是进行详细的数据收集和数据分析所获得的主要结果,数据字典在数据库设数据收集和数据分析所获得的主要结果,数据字典在数据库设计
25、中占有很重要的地位,主要包括下面计中占有很重要的地位,主要包括下面5 5个部分:个部分:(1) (1) 数据项:数据项:数据项是不可再分的数据单位。数据项是不可再分的数据单位。(2) (2) 数据结构:数据结构:数据结构反映了数据之间的组合关系数据结构反映了数据之间的组合关系。(3) (3) 数据流:数据流:据流是数据结构在系统内传输的路径。据流是数据结构在系统内传输的路径。(4) (4) 数据存储:数据存储:数据存储是数据及其结构停留或保存的地方,数据存储是数据及其结构停留或保存的地方,也是数据流的来源和去向之一。数据存储可以是手工文档、手也是数据流的来源和去向之一。数据存储可以是手工文档、
26、手工凭单或计算机文档。工凭单或计算机文档。(5) (5) 处理过程:处理过程:一般一般用判定表或判定树来描述,在数据字典中用判定表或判定树来描述,在数据字典中只描述说明性信息。只描述说明性信息。1 1、数据项:、数据项: 数据项是不可再分的数据单位数据项是不可再分的数据单位数据项描述数据项描述数据项名,数据项含义说明,别名,数据数据项名,数据项含义说明,别名,数据类型,长度,取值范围,值含义,与其他数据项的逻辑关类型,长度,取值范围,值含义,与其他数据项的逻辑关系系 取值范围、与其他数据项的逻辑关系定义了数据的完整性取值范围、与其他数据项的逻辑关系定义了数据的完整性约束条件约束条件例:学生学籍
27、管理子系统的数据字典。例:学生学籍管理子系统的数据字典。 以以“学号学号”数据项为例:数据项为例: 数据项名:数据项名:学号学号 含义说明:含义说明:唯一标识每个学生唯一标识每个学生别名:别名:学生编号学生编号 类型:类型:字符型字符型 长度:长度: 8 8 取值范围:取值范围:0000000000000000至至9999999999999999取值含义:取值含义:前两位标识该学生所在年级,后六位按顺序编号前两位标识该学生所在年级,后六位按顺序编号 标识与其他数据项的逻辑关系。标识与其他数据项的逻辑关系。2 2、数据结构:、数据结构: 数据结构反映了数据之间的组合关系。数据结构反映了数据之间的
28、组合关系。 一个数据结构可以由若干个数据项组成,也可以由若干个一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。数据结构组成,或由若干个数据项和数据结构混合组成。 数据结构描述数据结构描述数据结构名,含义说明,组成数据结构名,含义说明,组成: :数据数据项或数据结构项或数据结构例:数据结构描述:例:数据结构描述: 以以“学生学生”为例为例数据结构名:数据结构名:学生学生含义说明:含义说明:是学籍管理子系统的主体数据结构,定义了一个是学籍管理子系统的主体数据结构,定义了一个 学生的有关信息学生的有关信息组成:组成: 学号,姓名,性别,年龄,学号,
29、姓名,性别,年龄, 所在系,年级所在系,年级3 3、数据流:、数据流: 数据流是数据结构在系统内传输的路径。数据流是数据结构在系统内传输的路径。数据流描述数据流描述数据流名,说明,数据流来源,数据流去数据流名,说明,数据流来源,数据流去向,组成向,组成: :数据结构,平均流量,高峰期流量数据结构,平均流量,高峰期流量数据流来源是说明该数据流来自哪个过程数据流来源是说明该数据流来自哪个过程数据流去向是说明该数据流将到哪个过程去数据流去向是说明该数据流将到哪个过程去平均流量是指在单位时间(每天、每周、每月等)里的平均流量是指在单位时间(每天、每周、每月等)里的传输次数传输次数高峰期流量则是指在高峰
30、时期的数据流量高峰期流量则是指在高峰时期的数据流量如数据流如数据流“定货报表定货报表”可如下描述:可如下描述: 数据流:数据流:定货报表定货报表 说明:说明:每天一次送给采购员的需要定货的零件表每天一次送给采购员的需要定货的零件表 数据流来源:数据流来源:产生报表产生报表 数据流去向:数据流去向:输出到打印机输出到打印机 组成:组成:零件编号零件编号+ +零件名称零件名称+ +定货数量定货数量+ +价格价格+ +主要供主要供 应者应者+ +次要供应者次要供应者平均流量:平均流量:每天一次每天一次4 4、数据存储:、数据存储:数据存储是数据结构停留或保存的地方,也是数据存储是数据结构停留或保存的
31、地方,也是数据流的来源和去向之一。数据流的来源和去向之一。数据存储描述数据存储描述数据存储名,说明,编号,流入的数据流数据存储名,说明,编号,流入的数据流 ,流出,流出的数据流的数据流 , 组成组成: :数据结构,数据量,存取方式数据结构,数据量,存取方式流入的数据流:指出数据来源流入的数据流:指出数据来源流出的数据流:指出数据去向流出的数据流:指出数据去向数据量:数据量:每次存取多少数据,每天(或每小时、每周等)存取几每次存取多少数据,每天(或每小时、每周等)存取几次等信息次等信息存取方法:存取方法:批处理批处理/ /联机处理;检索联机处理;检索/ /更新;顺序检索更新;顺序检索/ /随机检
32、索随机检索如数据存储如数据存储“定货信息表定货信息表”可如下描述:可如下描述: 数据存储:数据存储:定货信息定货信息 说明:说明:记录需要定货的零件的情况记录需要定货的零件的情况流入数据流:流入数据流:定货信息定货信息 流出数据流:流出数据流:定货信息定货信息 组成:组成: 零件编号零件编号+ +零件名称零件名称+ +定货数量定货数量+ +主要供应者主要供应者+ +次要供应次要供应者者 数据量:数据量: 每天每天1010条条 存取方式存取方式: 随机存取随机存取5 5、处理过程、处理过程:处理过程的具体处理逻辑一般用判定表或判定处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要
33、描述处理过程的说明性信息树来描述。数据字典中只需要描述处理过程的说明性信息处理过程描述处理过程描述处理过程名,说明,输入处理过程名,说明,输入: :数据流,数据流,输出输出: :数据流,数据流, 处理处理: :简要说明简要说明简要说明:主要说明该处理过程的功能及处理要求简要说明:主要说明该处理过程的功能及处理要求功能:该处理过程用来做什么功能:该处理过程用来做什么处理要求:处理频度要求(如单位时间里处理多少事务,处理要求:处理频度要求(如单位时间里处理多少事务,多少数据量);响应时间要求等多少数据量);响应时间要求等处理要求是后面物理设计的输入及性能评价的标准处理要求是后面物理设计的输入及性能
34、评价的标准处理过程处理过程“分配宿舍分配宿舍”可如下描述:可如下描述:处理过程:处理过程:分配宿舍分配宿舍说明:说明:为所有新生分配学生宿舍为所有新生分配学生宿舍输入:输入:学生,宿舍,学生,宿舍,输出:输出:宿舍安排宿舍安排处理:处理:在新生报到后,为所有新生分配学生宿舍。要在新生报到后,为所有新生分配学生宿舍。要求同一间宿舍只能安排同一性别的学生,同一个学生只能安求同一间宿舍只能安排同一性别的学生,同一个学生只能安排在一个宿舍中。每个学生的居排在一个宿舍中。每个学生的居 住面积不小于住面积不小于3 3平方米。安平方米。安排新生宿舍其处理时间应不超过排新生宿舍其处理时间应不超过1515分钟。
35、分钟。3.3.1 3.3.1 概念结构的特点及设计方法概念结构的特点及设计方法 需求分析阶段描述的用户应用需求是现实世界需求分析阶段描述的用户应用需求是现实世界的具体需求,将需求分析得到的用户需求抽象为信的具体需求,将需求分析得到的用户需求抽象为信息结构即息结构即概念模型概念模型的过程就是的过程就是概念结构设计概念结构设计。 概念结构是各种概念结构是各种数据模型数据模型的共同基础,它比数的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定。概据模型更独立于机器、更抽象,从而更加稳定。概念结构设计是整个数据库设计的念结构设计是整个数据库设计的关键关键。概念模型设计的基础是概念模型设计的基础
36、是 需求分析的需求分析的结果结果概念模型描述工具是:概念模型描述工具是:E-RE-R图图1 1、概念结构设计的特点、概念结构设计的特点(1 1)是对现实世界的一个真实模拟,能真实、充分地)是对现实世界的一个真实模拟,能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。户对数据的处理要求。(2 2)易于理解,从而可以用它和不熟悉计算机的用户)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。交换意见,用户的积极参与是数据库的设计成功的关键。(3 3)易于更改,当应用环境和应用要
37、求改变时,容易)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。对概念模型修改和扩充。(4 4)易于向关系、网状、层次等各种数据模型转换。)易于向关系、网状、层次等各种数据模型转换。2 2、概念结构设计的方法:、概念结构设计的方法:1) 1) 自顶向下的设计方法自顶向下的设计方法 先定义全局概念结构的框架,然后逐步细化为完整的全先定义全局概念结构的框架,然后逐步细化为完整的全局概念结构。局概念结构。2) 2) 自底向上的设计方法自底向上的设计方法 先定义各局部应用的概念结构,后将它们集成,得到全先定义各局部应用的概念结构,后将它们集成,得到全局概念结构。局概念结构。3) 3)
38、逐步扩张的设计方法逐步扩张的设计方法 先定义最重要的核心部分,后向外扩充,生成其他概念先定义最重要的核心部分,后向外扩充,生成其他概念结构。结构。4) 4) 混合策略设计的方法混合策略设计的方法 即采用自顶向下与自底向上相结合的方法。即采用自顶向下与自底向上相结合的方法。3 3、常用策略:、常用策略: 自顶向下地进行需求分析 自底向上地设计概念结构4 4、自底向上设计概念结构的步骤:、自底向上设计概念结构的步骤:第1步:抽象数据并设计局部视图第2步:集成局部视图,得到全局概念结构3.3.2 3.3.2 数据抽象与局部视图设计数据抽象与局部视图设计 数据抽象是指从实际的人、物、事和概念中抽取所关
39、心数据抽象是指从实际的人、物、事和概念中抽取所关心的共同特性,忽略非本质的细节,把这些特性用各种概念精的共同特性,忽略非本质的细节,把这些特性用各种概念精确地加以描述,这些概念组成了某种概念模型。确地加以描述,这些概念组成了某种概念模型。1. 1. 三种数据抽象方法三种数据抽象方法(1) (1) 分类分类: : 定义某一类概念作为现实世界中一组对象的类型,定义某一类概念作为现实世界中一组对象的类型,这些对象具有某些共同的特性和行为。在这些对象具有某些共同的特性和行为。在E-RE-R模型中,实体集模型中,实体集就是这种抽象。就是这种抽象。(2) (2) 聚集:聚集:定义某一类型的组成部分,它抽象
40、了对象内部的类定义某一类型的组成部分,它抽象了对象内部的类型和型和 “ “组成部分组成部分”的语义,在的语义,在E-RE-R模型中若干属性的聚集组成模型中若干属性的聚集组成了实体型,就是这种抽象。了实体型,就是这种抽象。(3) (3) 概括:概括:定义类型之间的一种子集联系,它抽象了类型之间定义类型之间的一种子集联系,它抽象了类型之间的的“所属所属”的语义,子类继承超类上定义的所有抽象。的语义,子类继承超类上定义的所有抽象。数据抽象的用途:数据抽象的用途: 对需求分析阶段收集到的数据进行分类、组织(聚集),对需求分析阶段收集到的数据进行分类、组织(聚集),形成:形成:实体集实体集、属性属性,标
41、识实体的,标识实体的码码和确定实体集之间的和确定实体集之间的联系联系类型类型(1:1(1:1,1:1:n n,m:n)m:n)2. 2. 设计分设计分E-RE-R图的步骤:图的步骤:(1 1)选择局部应用:)选择局部应用: 需求分析阶段,已用多层需求分析阶段,已用多层数据流图数据流图和和数据字典数据字典描述了整个系统。设计分描述了整个系统。设计分E-RE-R图首先需要根据系统的图首先需要根据系统的具体情况,在多层的数据流图中选择一个具体情况,在多层的数据流图中选择一个适当层次适当层次的数据流图的数据流图,这组图中每一部分对应一个局部应用,这组图中每一部分对应一个局部应用,然后以这一层次的数据流
42、图为出发点,结合数据字然后以这一层次的数据流图为出发点,结合数据字典,设计分典,设计分E-RE-R图。图。 通常以中层数据流图作为设计分通常以中层数据流图作为设计分E-RE-R图的依据。图的依据。原因:高层数据流图只能反映系统的概貌,中层数原因:高层数据流图只能反映系统的概貌,中层数据流图能较好地反映系统中各局部应用的子系统组据流图能较好地反映系统中各局部应用的子系统组成,低层数据流图过细。成,低层数据流图过细。2. 2. 设计分设计分E-RE-R图的步骤:图的步骤:(1 1)选择局部应用)选择局部应用(2 2)逐一设计分)逐一设计分E-RE-R图图1 1)任务:)任务:标定局部应用中的实体集
43、、属性、码,实标定局部应用中的实体集、属性、码,实体集间的联系。体集间的联系。2 2)方法:)方法:将各局部应用涉及的数据分别从将各局部应用涉及的数据分别从数据字典数据字典中抽取(分类、聚集和概括)出来,参照中抽取(分类、聚集和概括)出来,参照数据流图数据流图,标定各局部应用中的实体、实体的属性、标识实体标定各局部应用中的实体、实体的属性、标识实体的码,确定实体之间的联系及其类型(的码,确定实体之间的联系及其类型(1:11:1,1:1:n n,m:nm:n)。)。例例: :例例: :工厂工厂( (包括厂名和厂长名包括厂名和厂长名) )需建立一个管理数据库需建立一个管理数据库存储以下信息存储以下
44、信息: :厂内有多个车间,每个车间有车间号、车间主任名、厂内有多个车间,每个车间有车间号、车间主任名、地址和电话;地址和电话;一个车间有多个工人,每个工人有职工号、姓名、一个车间有多个工人,每个工人有职工号、姓名、年龄、性别和工种;年龄、性别和工种;一个车间生产多种产品,产品有产品号和价格;一个车间生产多种产品,产品有产品号和价格;一个车间生产多种零件,一个零件也可能为多个车一个车间生产多种零件,一个零件也可能为多个车间制造,零件有零件号、重量和价格;间制造,零件有零件号、重量和价格;一个产品由多种零件组成,一种零件也可装配出多一个产品由多种零件组成,一种零件也可装配出多种产品;种产品;产品与
45、零件均存入仓库中;产品与零件均存入仓库中;厂内有多个仓库,仓库有仓库号、仓库主任名和电厂内有多个仓库,仓库有仓库号、仓库主任名和电话。话。试作出该系统的概念模型和试作出该系统的概念模型和关系数据模型关系数据模型。视图集成是指分视图集成是指分E-RE-R图的合并,有两种方式:图的合并,有两种方式:一次集成:一次集成多个分一次集成:一次集成多个分E-RE-R图,通常用于局图,通常用于局部视图比较简单时。部视图比较简单时。逐步累积式:首先集成两个局部视图(通常是逐步累积式:首先集成两个局部视图(通常是比较关键的两个局部视图),以后每次将一个比较关键的两个局部视图),以后每次将一个新的局部视图集成进来
46、新的局部视图集成进来不管采用哪种方式,一般都分两步完成:不管采用哪种方式,一般都分两步完成: 1. 1. 合并分合并分E-RE-R图,生成初步图,生成初步E-RE-R图图 2. 2. 消除不必要的冗余,设计基本消除不必要的冗余,设计基本E-RE-R图图1. 1. 合并分合并分E-RE-R图,生成初步图,生成初步E-RE-R图图(1) (1) 属性冲突属性冲突1) 1) 属性属性域域冲突,即属性值的类型、取值范围或取值集合冲突,即属性值的类型、取值范围或取值集合不同。不同。2) 2) 属性取值属性取值单位单位冲突。冲突。(2) (2) 命名冲突命名冲突1) 1) 同名异义同名异义冲突,即不同意义
47、的对象在不同的局部应用冲突,即不同意义的对象在不同的局部应用中具有相同的名字。中具有相同的名字。2) 2) 异名同义异名同义冲突,即意义相同的对象在不同的局部应用冲突,即意义相同的对象在不同的局部应用中有不同的名字。中有不同的名字。(3) (3) 结构冲突结构冲突1) 1) 同一对象在不同的应用中具有不同的抽象(在不同分同一对象在不同的应用中具有不同的抽象(在不同分E-RE-R图,既表示实体集,又表示属性)。图,既表示实体集,又表示属性)。2) 2) 同一实体在不同分同一实体在不同分E-RE-R图中的属性组成不一致图中的属性组成不一致. .3) 3) 实体之间的联系在不同的分实体之间的联系在不
48、同的分E-RE-R图中呈现不同的类型。图中呈现不同的类型。注:实体集与属性的区别:注:实体集与属性的区别:实体集与属性是相对而言的。同一实体集与属性是相对而言的。同一事物,在一种应用环境中作为事物,在一种应用环境中作为“属性属性”,在另一种应用环境,在另一种应用环境中就必须作为中就必须作为“实体集实体集”。例:学校中的系,在某种应用环境中,它只是作为例:学校中的系,在某种应用环境中,它只是作为“学生学生”实实体的一个属性,表明一个学生属于哪个系;而在另一种环境体的一个属性,表明一个学生属于哪个系;而在另一种环境中,由于需要考虑一个系的系主任、教师人数、学生人数、中,由于需要考虑一个系的系主任、
49、教师人数、学生人数、办公地点等,这时它就需要作为实体集了办公地点等,这时它就需要作为实体集了. .一般原则一般原则: :现实世界中的事物凡能够作为属性对待的,应尽量作为属现实世界中的事物凡能够作为属性对待的,应尽量作为属性性, ,但要满足下面条件:但要满足下面条件:属性不能再具有需要描述的性质。即属性必须是不可分的属性不能再具有需要描述的性质。即属性必须是不可分的数据项,不能再由另一些属性组成。数据项,不能再由另一些属性组成。属性不能与其他实体具有联系。联系只发生在实体之间。属性不能与其他实体具有联系。联系只发生在实体之间。例例1 1:“学生学生”由学号、姓名等属性进一步描述,根据准则,由学号
50、、姓名等属性进一步描述,根据准则,“学生学生”只能作为实体,不能作为属性。只能作为实体,不能作为属性。例例2 2:职称通常作为教师实体的属性,但在涉及住房分配时,由:职称通常作为教师实体的属性,但在涉及住房分配时,由于分房与职称有关,也就是说职称与住房实体之间有联系,根于分房与职称有关,也就是说职称与住房实体之间有联系,根据准则,这时把职称作为实体来处理会更合适些。据准则,这时把职称作为实体来处理会更合适些。2. 2. 消除不必要的冗余,设计基本消除不必要的冗余,设计基本E-RE-R图图(1 1)冗余:)冗余: 冗余的数据冗余的数据是指可由基本数据导出的数据,是指可由基本数据导出的数据, 冗余
51、的联系冗余的联系是指可由其他联系导出的联系。是指可由其他联系导出的联系。 冗余数据和冗余联系容易破坏数据库的完整性,给冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难。数据库维护增加困难。 消除不必要的冗余后的初步消除不必要的冗余后的初步E-RE-R图称为图称为基本基本E-RE-R图图。(2 2)消除冗余的方法)消除冗余的方法 1 1)分析方法)分析方法 以数据字典和数据流图为依据,根据数据字典中关以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余。于数据项之间逻辑关系的说明来消除冗余。 2 2)规范化理论方法)规范化理论方法 用关系数据库规范化理论
52、来消除关系模型中的冗余。用关系数据库规范化理论来消除关系模型中的冗余。例例: : 银行计算机储蓄系统的工作过程大致如下:银行计算机储蓄系统的工作过程大致如下:储户填写的存款单或取款单由业务员键入系统,储户填写的存款单或取款单由业务员键入系统, 如果是存款则系统记录存款人姓名、住址如果是存款则系统记录存款人姓名、住址( (或电话或电话号码号码) )、身份证号码、存款类型、存款日期、到期、身份证号码、存款类型、存款日期、到期日期、利率及密码日期、利率及密码( (可选可选) )等信息,并印出存单给等信息,并印出存单给储户;储户; 如果是取款而且存款时留有密码,则系统首先核如果是取款而且存款时留有密码
53、,则系统首先核对储户密码,若密码正确或存款时未留密码,则对储户密码,若密码正确或存款时未留密码,则系统计算利息并印出利息清单给储户。系统计算利息并印出利息清单给储户。 请用数据流图描绘本系统的功能,并用实体请用数据流图描绘本系统的功能,并用实体- -联系图描绘系统中的数据对象。联系图描绘系统中的数据对象。 关系数据模型关系数据模型1 1、逻辑结构设计的任务、逻辑结构设计的任务 概念结构是各种数据模型的概念结构是各种数据模型的共同基础共同基础, ,为了能够用某一为了能够用某一DBMSDBMS实现用户需求,还必须将概念结构进一步转化为相应的实现用户需求,还必须将概念结构进一步转化为相应的数据模型数
54、据模型,这正是数据库逻辑结构设计所要完成的任务。,这正是数据库逻辑结构设计所要完成的任务。2 2、逻辑结构设计的步骤、逻辑结构设计的步骤(1 1)将概念结构转化为一般的数据模型,如关系模型、)将概念结构转化为一般的数据模型,如关系模型、网状模型、层次模型网状模型、层次模型(2 2)将转化来的关系模型、网状模型、层次模型向特定)将转化来的关系模型、网状模型、层次模型向特定DBMSDBMS支持下的数据模型转换支持下的数据模型转换(3 3)对数据模型进行优化)对数据模型进行优化逻辑结构设计逻辑结构设计转化为一般转化为一般数据模型数据模型转化为特定转化为特定DBMS支持下支持下的数据模型的数据模型优化
55、模型优化模型概念结概念结构设计构设计数据库数据库物理设计物理设计基本基本E-R图图转换规则转换规则特定特定DBMS的的特点与限制特点与限制优化方法如优化方法如规范化理论规范化理论逻辑逻辑模型模型1.1.一般转换规则一般转换规则(1)(1)实体集的转换规则实体集的转换规则 概念模型中的每一个概念模型中的每一个实体集实体集转换为关系模型中的一个转换为关系模型中的一个关系关系,实体的属性就是关系的实体的属性就是关系的属性属性,实体的码就是关系的,实体的码就是关系的码码,关系的,关系的结构是关系模式。结构是关系模式。(2)(2)联系的转换联系的转换规则规则 将联系转换为一个将联系转换为一个独立的关系独
56、立的关系:与该联系相连的:与该联系相连的各实体各实体的的码码以及联系本身的以及联系本身的属性属性均转换为关系的均转换为关系的属性属性,且每个,且每个实体的码实体的码( (或它们的组合或它们的组合) )是该关系的是该关系的候选码候选码。 例如例如 “ “图书管理图书管理” 2. 2. 实体集间联系的转换规则实体集间联系的转换规则( (1) m:n1) m:n联系的转换方法联系的转换方法 在向关系模型转换时,一个在向关系模型转换时,一个m:nm:n联系转换为一个关系。联系转换为一个关系。例:例:学生学号姓名年龄性别课程课程号课程名学时数选修mn成绩转换的关系模型为:转换的关系模型为: 学生(学生(
57、学号学号,姓名,年龄,性别),姓名,年龄,性别) 课程(课程(课程号课程号,课程名,学时数),课程名,学时数) 选修(选修(学号,课程号学号,课程号,成绩),成绩)转换的关系模型为:转换的关系模型为: 零件(零件(零件号零件号, 名称,价格);名称,价格); 组装(组装(组装件号,零件号组装件号,零件号,数量);,数量);例:例:自自联系中的联系中的m:nm:n联系联系零件零件号名称价格组装nm数量(2) 1:(2) 1:n n联系的转换方法联系的转换方法 1 1)将联系转换为一个)将联系转换为一个独立的关系独立的关系,其关系的属性由与该联系,其关系的属性由与该联系相连的相连的各实体集的码各实
58、体集的码以及以及联系联系本身本身的属性的属性组成,而该关系的组成,而该关系的码码为为n n端实体集的码端实体集的码;仓储n产品产品号产品名价格1仓库仓库号地点面积数量方案方案1 1:联系形成的关系独立存在。联系形成的关系独立存在。 仓库(仓库(仓库号仓库号,地点,面积),地点,面积) 产品(产品(产品号产品号,产品名,价格),产品名,价格) 仓储(仓库号,仓储(仓库号,产品号产品号,数量),数量)方案方案2 2: :联系形成的关系与联系形成的关系与n n端对象合并。端对象合并。仓库(仓库(仓库号仓库号,地点,面积),地点,面积)产品产品( (产品号产品号, ,产品名产品名, ,价格价格, ,仓
59、库号仓库号, ,数量)数量)2 2)在)在n n端端实体集中实体集中增加新属性增加新属性,新属性由联系对应的,新属性由联系对应的1 1端端实体实体集的集的码码和和联系联系自身的自身的属性属性构成,新增属性后原关系的码不变。构成,新增属性后原关系的码不变。转换的关系模型为:转换的关系模型为:方案方案1 1: 职工(职工(职工号职工号,姓名,年龄),姓名,年龄) 领导(领导(职工号职工号,领导工号),领导工号)职工职工号姓名年龄领导1n例:例:自自联系中的联系中的1:n联系联系方案方案2 2: 职工(职工(职工号职工号,姓名,年龄,领导工号),姓名,年龄,领导工号)( (3) 1:13) 1:1联
60、系的转换方法联系的转换方法 1) 1) 将将1:11:1联系转换为一个联系转换为一个独立的关系独立的关系:与该联系相:与该联系相连的连的各实体各实体的的码码以及联系本身的以及联系本身的属性属性均转换为关系的均转换为关系的属性属性,且每个,且每个实体的码实体的码均是该关系的均是该关系的候选码候选码。 2) 2) 将将1:11:1联系与某一端实体集所对应的关系联系与某一端实体集所对应的关系合并合并,则需要在被合并关系中增加则需要在被合并关系中增加属性属性,其新增的属性为,其新增的属性为联联系本身的属性系本身的属性和与联系相关的和与联系相关的另一个实体集的码另一个实体集的码。【例】将图中【例】将图中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 护理专业知识与技能
- 电工电子技术 课件 16.流水灯电路的整体安装与调试
- 手机管理的建议和做法
- 第5章 广告中的图形设计
- 用微课学 图形图像处理(Photoshop CS6)课件 项目二任务十-任务十四 用魔棒抠图- 汽车涂装
- 幼儿一日生活安排教育
- 临床操作打结技巧
- 商场发票管理培训
- 教育研究基地评选答辩
- 教育培训主任述职
- 2024年长江工程职业技术学院单招职业技能测试题库及答案解析
- RFJ 006-2021 RFP型人防过滤吸收器制造与验收规范(暂行)
- JTG∕T F30-2014 公路水泥混凝土路面施工技术细则
- 加油站安全巡检检查
- 植物生理学课件(王小菁-第8版)-第五章-植物同化物的运输
- 《国家综合性消防救援队伍处分条令(试行)》知识考试题库(含答案)
- 吉林油田公司管理手册
- 个人简历电子版表格下载
- 甲状腺炎-桥本氏甲状腺炎
- 癥瘕的中医疗法课件
- 私募基金管理人登记备案资料表(批注版)
评论
0/150
提交评论