收藏 分销(赏)

工学第七讲数据库设计.pptx

上传人:天**** 文档编号:4339096 上传时间:2024-09-08 格式:PPTX 页数:47 大小:1.55MB
下载 相关 举报
工学第七讲数据库设计.pptx_第1页
第1页 / 共47页
工学第七讲数据库设计.pptx_第2页
第2页 / 共47页
工学第七讲数据库设计.pptx_第3页
第3页 / 共47页
工学第七讲数据库设计.pptx_第4页
第4页 / 共47页
工学第七讲数据库设计.pptx_第5页
第5页 / 共47页
点击查看更多>>
资源描述

1、第七讲第七讲 数据库设计方法数据库设计方法要求:要求:掌握掌握数据库设计的基本步骤数据库设计的基本步骤以及以及每个阶段的具体任务和每个阶段的具体任务和主要实现方法主要实现方法数据库的运行和维护数据库的运行和维护提纲提纲数据库设计概述数据库设计概述数据库需求分析数据库需求分析数据库结构设计数据库结构设计数据库行为设计数据库行为设计数据库实施数据库实施参考课本第8章概念结构概念结构概念结构概念结构逻辑结构逻辑结构逻辑结构逻辑结构物理结构物理结构物理结构物理结构一、数据库设计概述一、数据库设计概述数据库设计包括静态数据模型数据库设计包括静态数据模型数据库设计包括静态数据模型数据库设计包括静态数据模型

2、(模式与子模式的设计模式与子模式的设计模式与子模式的设计模式与子模式的设计,即数据库的即数据库的即数据库的即数据库的结构设计结构设计结构设计结构设计)和在模型上的动态操作即应用程序设计称为数据设计。和在模型上的动态操作即应用程序设计称为数据设计。和在模型上的动态操作即应用程序设计称为数据设计。和在模型上的动态操作即应用程序设计称为数据设计。1.1.数据库系统的设计过程数据库系统的设计过程目前数据库设计一般都遵循目前数据库设计一般都遵循目前数据库设计一般都遵循目前数据库设计一般都遵循软件的生命周期理论软件的生命周期理论软件的生命周期理论软件的生命周期理论,分为,分为,分为,分为6 6个阶段个阶段

3、个阶段个阶段进行:进行:进行:进行:需求分析、概念结构设计需求分析、概念结构设计需求分析、概念结构设计需求分析、概念结构设计、逻辑结构设计、物理结构设计、逻辑结构设计、物理结构设计、逻辑结构设计、物理结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库的运行和维护。数据库实施、数据库的运行和维护。数据库实施、数据库的运行和维护。数据库实施、数据库的运行和维护。其中需求分析和概念结构设计独立于任何的其中需求分析和概念结构设计独立于任何的其中需求分析和概念结构设计独立于任何的其中需求分析和概念结构设计独立于任何的DBMSDBMS系统,而逻辑系统,而逻辑系统,而逻辑系统,而逻辑结构设计和物理结构

4、设计则与具体的结构设计和物理结构设计则与具体的结构设计和物理结构设计则与具体的结构设计和物理结构设计则与具体的DBMSDBMS有关。有关。有关。有关。数据库建设的基本规律数据库建设的基本规律数据库建设的基本规律数据库建设的基本规律:三分技术,七分管理,十二分基础数据三分技术,七分管理,十二分基础数据三分技术,七分管理,十二分基础数据三分技术,七分管理,十二分基础数据 管理管理管理管理 :数据库建设项目管理;数据库建设项目管理;数据库建设项目管理;数据库建设项目管理;企业(即应用部门)的业务管企业(即应用部门)的业务管企业(即应用部门)的业务管企业(即应用部门)的业务管理理理理 基础数据:收集、

5、入库基础数据:收集、入库基础数据:收集、入库基础数据:收集、入库 ,更新新的数据;,更新新的数据;,更新新的数据;,更新新的数据;将数据库结构设计和数据处理设计密切结合。将数据库结构设计和数据处理设计密切结合。将数据库结构设计和数据处理设计密切结合。将数据库结构设计和数据处理设计密切结合。国标中规定软件生命周期:可行性研究与计国标中规定软件生命周期:可行性研究与计国标中规定软件生命周期:可行性研究与计国标中规定软件生命周期:可行性研究与计划,需求分析,概要设计,详细设计,实现,划,需求分析,概要设计,详细设计,实现,划,需求分析,概要设计,详细设计,实现,划,需求分析,概要设计,详细设计,实现

6、,组装测试,确认测试,使用和维护组装测试,确认测试,使用和维护组装测试,确认测试,使用和维护组装测试,确认测试,使用和维护(了解了解了解了解)计划计划分析分析设计设计编码编码调试调试维护维护可行性研究报告可行性研究报告项目实施计划项目实施计划需求规格说明书,数据要求说明书需求规格说明书,数据要求说明书初步用户手册,确认测试计划初步用户手册,确认测试计划概要设计说明书、数据库设计说明书概要设计说明书、数据库设计说明书详细设计说明书,组装测试计划详细设计说明书,组装测试计划程序清单程序清单测试分析报告测试分析报告用户手册用户手册软件问题报告软件问题报告软件修改报告软件修改报告数据分析功能分析概念模

7、型设计功能模型功能说明逻辑数据库设计事务设计程序说明物理数据库设计子模式设计应用程序设计建立数据程序编码调试现实世界数据库的结构设计和行为设计(了解)数据库的结构设计和行为设计(了解)数据库设计步骤数据库设计步骤应用需求应用需求(数据、处理)(数据、处理)需求收集和分析需求收集和分析设计概念结构设计概念结构设计逻辑结构设计逻辑结构数据模型优化数据模型优化设计物理结构设计物理结构评价设计、性能预测评价设计、性能预测物理实现物理实现试验性运行试验性运行使用、维护数据库使用、维护数据库转换规则、转换规则、DBMSDBMS功能、功能、优化方法优化方法应用要求,应用要求,DBMSDBMS详详 细特征细特

8、征不满意不满意需求分析阶段需求分析阶段概念设计阶段概念设计阶段逻辑设计阶段逻辑设计阶段物理设计阶段物理设计阶段数据库数据库实施阶段实施阶段数据库运行、数据库运行、维护阶段维护阶段 2.2.各个阶段的任务各个阶段的任务需求分析:需求分析:该阶段主要是与系统用户相互交流,了解他们对该阶段主要是与系统用户相互交流,了解他们对数据的要求数据的要求及已有的业务流程及已有的业务流程,并把这些信息用,并把这些信息用数据流图数据流图和和数据字典数据字典等图表或文字等图表或文字的形式记录下来,最终与用户对系统的信息要求和处理要求取得一致认的形式记录下来,最终与用户对系统的信息要求和处理要求取得一致认识。识。概念

9、设计:概念设计:该阶段要对需求分析中收集的信息和数据进行分析和抽象,该阶段要对需求分析中收集的信息和数据进行分析和抽象,确定实体、属性及他们之间的联系,将各用户的局部视图合并成一个总确定实体、属性及他们之间的联系,将各用户的局部视图合并成一个总的全局视图,形成独立于计算机的反映用户需求的的全局视图,形成独立于计算机的反映用户需求的概念模型概念模型。目的是描。目的是描述数据库的信息内容。述数据库的信息内容。逻辑设计:逻辑设计:在概念模型的基础上导出数据库的逻辑模型,逻辑模式是可在概念模型的基础上导出数据库的逻辑模型,逻辑模式是可被被DBMS所处理的数据库逻辑结构,它包括数据项、记录及记录间的联所

10、处理的数据库逻辑结构,它包括数据项、记录及记录间的联系、安全性和一致性约束等。导出的逻辑结构是否与概念模式一致,从系、安全性和一致性约束等。导出的逻辑结构是否与概念模式一致,从功能和性能上是否满足用户的要求,进行模式评价,如果达不到用户要功能和性能上是否满足用户的要求,进行模式评价,如果达不到用户要求,还要反复修正或重新设计。求,还要反复修正或重新设计。物理设计:物理设计:该阶段根据该阶段根据DBMS的特点和处理的需要,进行物理存储的安的特点和处理的需要,进行物理存储的安排,建立索引,形成数据库的内模式。排,建立索引,形成数据库的内模式。一、数据库设计概述一、数据库设计概述数据库的实施:该阶段

11、建立数据库的实质性阶段,将建立实际数据库结数据库的实施:该阶段建立数据库的实质性阶段,将建立实际数据库结构,装入数据,完成编码和进行测试,最终使系统投入使用。构,装入数据,完成编码和进行测试,最终使系统投入使用。数据库的运行和维护:是整个数据库生存期中最长的时间段,在该阶段数据库的运行和维护:是整个数据库生存期中最长的时间段,在该阶段设计者需根据系统运行中产生的问题及用户的新需求不断完善系统功能设计者需根据系统运行中产生的问题及用户的新需求不断完善系统功能和提高系统性能,以延长数据库使用时间。和提高系统性能,以延长数据库使用时间。2.2.各个阶段的任务各个阶段的任务一、数据库设计概述一、数据库

12、设计概述二、数据库需求分析二、数据库需求分析 1.1.需求分析介绍需求分析介绍需求分析简单地说就是分析用户的要求。需求分析是设计数据库的起点,需求分析简单地说就是分析用户的要求。需求分析是设计数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计结果是否合理和实用。各个阶段的设计,并影响到设计结果是否合理和实用。需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。作为需求分析是整个设计过程的基础,是最困难、最耗费时间的一步。作为基础的需求分析是否做的充分与准确,决定了在其上构建

13、数据库大厦的基础的需求分析是否做的充分与准确,决定了在其上构建数据库大厦的速度与质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。速度与质量。需求分析做得不好,甚至会导致整个数据库设计返工重做。需求分析具体可按以下几步进行:需求分析具体可按以下几步进行:用户需求的收集;用户需求的收集;用户需求的说明;用户需求的说明;撰写需求说明书撰写需求说明书需求分析需求分析调查组织机调查组织机构总体情况构总体情况熟悉业务熟悉业务活动活动 用户用户 设计人员设计人员明确用户明确用户需求需求确定系统确定系统边界边界概概念念设设计计DDDFD 2.2.分析中采用的方法和工具分析中采用的方法和工具结构化分析

14、(结构化分析(SA)SA的常用工具:的常用工具:用数据流图(用数据流图(DFD);数据字典(数据字典(DD)来描述。来描述。数据存储数据存储数据来源数据来源数据输出数据输出处理处理数据流数据流数据流数据流n nSASA方法:从最上层的系统组织机构入手,采用自顶向下、逐层方法:从最上层的系统组织机构入手,采用自顶向下、逐层方法:从最上层的系统组织机构入手,采用自顶向下、逐层方法:从最上层的系统组织机构入手,采用自顶向下、逐层分解的方式分解系统。它把任何一个系统都抽象为分解的方式分解系统。它把任何一个系统都抽象为分解的方式分解系统。它把任何一个系统都抽象为分解的方式分解系统。它把任何一个系统都抽象

15、为:该图给出的只是最高层该图给出的只是最高层该图给出的只是最高层该图给出的只是最高层次抽象的系统概貌,要次抽象的系统概貌,要次抽象的系统概貌,要次抽象的系统概貌,要反映更详细的内容,可反映更详细的内容,可反映更详细的内容,可反映更详细的内容,可将处理功能分解为若干将处理功能分解为若干将处理功能分解为若干将处理功能分解为若干子功能,每个功能还可子功能,每个功能还可子功能,每个功能还可子功能,每个功能还可以继续分解,直到把系以继续分解,直到把系以继续分解,直到把系以继续分解,直到把系统工作过程表示清楚为统工作过程表示清楚为统工作过程表示清楚为统工作过程表示清楚为止。止。止。止。例例例例1 1:计算

16、一个班中学生的平均成绩可以进行计算一个班中学生的平均成绩可以进行计算一个班中学生的平均成绩可以进行计算一个班中学生的平均成绩可以进行如下分解:如下分解:如下分解:如下分解:找出一个学生的成绩;找出一个学生的成绩;找出一个学生的成绩;找出一个学生的成绩;计算总计算总计算总计算总共有多少学生;共有多少学生;共有多少学生;共有多少学生;计算总成绩;计算总成绩;计算总成绩;计算总成绩;用总成绩除用总成绩除用总成绩除用总成绩除以学生人数以学生人数以学生人数以学生人数计算总成绩又可以分为以下子任务:计算总成绩又可以分为以下子任务:计算总成绩又可以分为以下子任务:计算总成绩又可以分为以下子任务:找出每找出每

17、找出每找出每个学生的档案;个学生的档案;个学生的档案;个学生的档案;读出成绩;读出成绩;读出成绩;读出成绩;把成绩加到部把成绩加到部把成绩加到部把成绩加到部分和上;分和上;分和上;分和上;读出下个学生的档案读出下个学生的档案读出下个学生的档案读出下个学生的档案二、数据库需求分析二、数据库需求分析加工名加工名或或变换数据的变换数据的加工或处理加工或处理数据源数据源/终点名终点名或或数据的源数据的源/终点终点数据名称数据名称或或数据存储数据存储数据流数据流数据流数据流数据流图(数据流图(DFD)使用的图形规范)使用的图形规范n n用数据流图(用数据流图(用数据流图(用数据流图(DFDDFD)2.2

18、.分析中采用的方法和工具分析中采用的方法和工具二、数据库需求分析二、数据库需求分析n n数据字典数据字典数据字典数据字典 2.2.分析中采用的方法和工具分析中采用的方法和工具数据字典数据字典数据字典数据字典(Data DictionaryData Dictionary,简称简称简称简称DD)DD)和数据流图密切配合,能清楚地和数据流图密切配合,能清楚地和数据流图密切配合,能清楚地和数据流图密切配合,能清楚地表达数据处理的要求。表达数据处理的要求。表达数据处理的要求。表达数据处理的要求。数据字典用于对数据流图中出现的所有成分给数据字典用于对数据流图中出现的所有成分给数据字典用于对数据流图中出现的

19、所有成分给数据字典用于对数据流图中出现的所有成分给出定义,它使数据流图上的数据流名字、加工名字和数据存贮名字具出定义,它使数据流图上的数据流名字、加工名字和数据存贮名字具出定义,它使数据流图上的数据流名字、加工名字和数据存贮名字具出定义,它使数据流图上的数据流名字、加工名字和数据存贮名字具有确切的解释。有确切的解释。有确切的解释。有确切的解释。数据字典包括数据字典包括数据字典包括数据字典包括:数据结构数据结构数据结构数据结构;数据项数据项数据项数据项;数据流数据流数据流数据流;数据存贮数据存贮数据存贮数据存贮;处理处理处理处理过程过程过程过程例例例例2 2:首先接受学生提交的学生证和申请单,根

20、据学生档案情况检验首先接受学生提交的学生证和申请单,根据学生档案情况检验首先接受学生提交的学生证和申请单,根据学生档案情况检验首先接受学生提交的学生证和申请单,根据学生档案情况检验学生证的有效性和申请单是否填写得正确,如果有误则谢绝,如果无学生证的有效性和申请单是否填写得正确,如果有误则谢绝,如果无学生证的有效性和申请单是否填写得正确,如果有误则谢绝,如果无学生证的有效性和申请单是否填写得正确,如果有误则谢绝,如果无误则根据学生的注册记录情况审查接收学生的申请要求。如果是申请误则根据学生的注册记录情况审查接收学生的申请要求。如果是申请误则根据学生的注册记录情况审查接收学生的申请要求。如果是申请

21、误则根据学生的注册记录情况审查接收学生的申请要求。如果是申请注册,则进行注册登记;如果是申请选课,则先查询课程档案是否有注册,则进行注册登记;如果是申请选课,则先查询课程档案是否有注册,则进行注册登记;如果是申请选课,则先查询课程档案是否有注册,则进行注册登记;如果是申请选课,则先查询课程档案是否有满足申请要求的课程,如果有则进行选课登记,如果没有则通知学生满足申请要求的课程,如果有则进行选课登记,如果没有则通知学生满足申请要求的课程,如果有则进行选课登记,如果没有则通知学生满足申请要求的课程,如果有则进行选课登记,如果没有则通知学生无此课。无此课。无此课。无此课。对数据项的描述对数据项的描述

22、对数据项的描述对数据项的描述:数据项描述数据项描述数据项描述数据项描述 数据项名,数据项含义说明,别名,数据项名,数据项含义说明,别名,数据项名,数据项含义说明,别名,数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的联系数据项之间的联系数据项之间的联系数据项之间的联系 二、数据库需求分析二、数据库需求分析数据流图数据流图数据字典简单的表示如下:数据项数据项类型类

23、型长度长度值范围值范围学号学号字符型字符型800000001999999999姓名姓名字符型字符型8任何字符任何字符性别性别字符型字符型2男男或或女女出生日期出生日期日期时间型日期时间型8“0000”.“9999”“/”01.12/01.31 入学时间入学时间日期时间型日期时间型8“0000”.“9999”“/”01.12/01.31 系别系别字符型字符型12已有的系已有的系密码密码字符型字符型6000001.999999课程号课程号字符型字符型3000999课程名课程名字符型字符型20存在的课程存在的课程选课时间选课时间日期时间型日期时间型8“0000”.“9999”“/”“01”.“12”

24、“/”“01”.“31”+春季春季或或秋季秋季成绩成绩数值型数值型3(小数位数为(小数位数为1)0100 000999先修课程号先修课程号字符型字符型3学分学分正整数正整数1010n n需求分析总结:需求分析总结:需求分析总结:需求分析总结:2.2.分析中采用的方法和工具分析中采用的方法和工具需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数需求分析阶段的一个重要而困难的任务是收集将来应用所涉及的数据,设计人员据,设计人员据,设计人员据,设计人员应充分考虑到可能的扩充和改

25、变应充分考虑到可能的扩充和改变应充分考虑到可能的扩充和改变应充分考虑到可能的扩充和改变,使设计易于更改,系,使设计易于更改,系,使设计易于更改,系,使设计易于更改,系统易于扩充。统易于扩充。统易于扩充。统易于扩充。必须强调必须强调必须强调必须强调用户的参与用户的参与用户的参与用户的参与,这是数据库应用系统设计的特点,这是数据库应用系统设计的特点,这是数据库应用系统设计的特点,这是数据库应用系统设计的特点需求分析主要是考虑需求分析主要是考虑需求分析主要是考虑需求分析主要是考虑“做什么做什么做什么做什么”的问题,而不是考虑的问题,而不是考虑的问题,而不是考虑的问题,而不是考虑“怎么做怎么做怎么做怎

26、么做”的的的的问题。数据流图的概念比较简单,利于系统分析员与用户的沟通。问题。数据流图的概念比较简单,利于系统分析员与用户的沟通。问题。数据流图的概念比较简单,利于系统分析员与用户的沟通。问题。数据流图的概念比较简单,利于系统分析员与用户的沟通。数据字典数据字典数据字典数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、是在需求分析阶段建立,在数据库设计过程中不断修改、是在需求分析阶段建立,在数据库设计过程中不断修改、是在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善的。充实、完善的。充实、完善的。充实、完善的。二、数据库需求分析二、数据库需求分析三、概念设计三、概念设计 1.

27、1.概念模型介绍概念模型介绍能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户对数据的处理要求。用户对数据的处理要求。用户对数据的处理要求。用户对数据的处理要求。易于理解。易于理解。易于理解。易于理解。易于更改易于更改易于更改易于更改.易于向关系、网状、层次等各种数据模型转化。易于向关系、网状、层次等各种数据模型转化。易于向关系、网状、层次等各种数据模型转化。易于向关系、网状、层次等各种数据模型转化。自

28、顶向下:即首先定义全局概念结构的框架,然后逐步细化。自顶向下:即首先定义全局概念结构的框架,然后逐步细化。自顶向下:即首先定义全局概念结构的框架,然后逐步细化。自顶向下:即首先定义全局概念结构的框架,然后逐步细化。自底向上自底向上自底向上自底向上:即首先定义各局部应用的概念结构,然后将他们集成:即首先定义各局部应用的概念结构,然后将他们集成:即首先定义各局部应用的概念结构,然后将他们集成:即首先定义各局部应用的概念结构,然后将他们集成起来,得到全局概念结构。起来,得到全局概念结构。起来,得到全局概念结构。起来,得到全局概念结构。自底向上的设计方法分两步进行:首先抽象数据并建立局部概念模自底向上

29、的设计方法分两步进行:首先抽象数据并建立局部概念模自底向上的设计方法分两步进行:首先抽象数据并建立局部概念模自底向上的设计方法分两步进行:首先抽象数据并建立局部概念模型,然后在将局部概念模型合并为全局概念模型。型,然后在将局部概念模型合并为全局概念模型。型,然后在将局部概念模型合并为全局概念模型。型,然后在将局部概念模型合并为全局概念模型。n n概念模型特点:概念模型特点:概念模型特点:概念模型特点:n n概念设计常采用的方法:概念设计常采用的方法:概念设计常采用的方法:概念设计常采用的方法:描述概念模型的工具是描述概念模型的工具是描述概念模型的工具是描述概念模型的工具是E-RE-R图图图图。

30、n n常用策略常用策略常用策略常用策略:自顶向下地进行需求分析自顶向下地进行需求分析自顶向下地进行需求分析自顶向下地进行需求分析自底向上地设计概念结构自底向上地设计概念结构自底向上地设计概念结构自底向上地设计概念结构三、概念设计三、概念设计 1.1.概念模型介绍概念模型介绍 2.2.局部概念模型的设计局部概念模型的设计n n步骤:步骤:步骤:步骤:首先明确局部应用的范围首先明确局部应用的范围选择实体,确定实体的属性及标识实体的关键字选择实体,确定实体的属性及标识实体的关键字划分实体和实体属性时,一般遵循以下经验性原则:划分实体和实体属性时,一般遵循以下经验性原则:属性是不可再分的数据项,不能再

31、有需要说明的信息,否则该属性属性是不可再分的数据项,不能再有需要说明的信息,否则该属性定义为实体。定义为实体。属性不能与其他实体发生联系,联系只能发生在实体之间。属性不能与其他实体发生联系,联系只能发生在实体之间。为了简化为了简化ER图的设置,凡能够作为属性的尽量作为属性处理。图的设置,凡能够作为属性的尽量作为属性处理。确定实体之间的联系,产生局部确定实体之间的联系,产生局部ER模型模型三、概念设计三、概念设计n n选择实体与属性时三种常用抽象方法:选择实体与属性时三种常用抽象方法:选择实体与属性时三种常用抽象方法:选择实体与属性时三种常用抽象方法:分类分类(Classification):值

32、和型之间的:值和型之间的“is member of”的语义的语义聚集聚集(Aggregation):对象内部类型和成分之间:对象内部类型和成分之间“is part of”的语义的语义概括概括(Generalization):类型之间的:类型之间的“is subset of”的语义的语义学生学生学号学号注注册册密密码码n1课程名课程号先修课程号学生学生学号学号性别性别入学时间入学时间姓名姓名系别系别出生日期出生日期选选修修课课程程成绩成绩选课时间选课时间mn例例4:将上例转换成局部将上例转换成局部e-r图。图。密码号密码号不恰当!不恰当!3.3.合成全局概念模型合成全局概念模型n n消除冲突,合

33、并各分消除冲突,合并各分消除冲突,合并各分消除冲突,合并各分ERER模型模型模型模型三种冲突:三种冲突:三种冲突:三种冲突:命名冲突(同名异义、异名同义)命名冲突(同名异义、异名同义)命名冲突(同名异义、异名同义)命名冲突(同名异义、异名同义)属性冲突(属性取值单位冲突、属性域冲突)属性冲突(属性取值单位冲突、属性域冲突)属性冲突(属性取值单位冲突、属性域冲突)属性冲突(属性取值单位冲突、属性域冲突)结构冲突(同一对象有不同的抽象、同一实体在不同的局部结构冲突(同一对象有不同的抽象、同一实体在不同的局部结构冲突(同一对象有不同的抽象、同一实体在不同的局部结构冲突(同一对象有不同的抽象、同一实体

34、在不同的局部ERER模型模型模型模型中包含的属性不完全相同或属性的排列次序不同、实体之间的联系在中包含的属性不完全相同或属性的排列次序不同、实体之间的联系在中包含的属性不完全相同或属性的排列次序不同、实体之间的联系在中包含的属性不完全相同或属性的排列次序不同、实体之间的联系在不同的局部不同的局部不同的局部不同的局部ERER模型中类型不一致)模型中类型不一致)模型中类型不一致)模型中类型不一致)n n消除冗余,得到基本消除冗余,得到基本消除冗余,得到基本消除冗余,得到基本ERER模型模型模型模型冗余的数据冗余的数据冗余的数据冗余的数据指可以由基本数据导出的数据;指可以由基本数据导出的数据;指可以

35、由基本数据导出的数据;指可以由基本数据导出的数据;冗余的联系冗余的联系冗余的联系冗余的联系也是可由基本联也是可由基本联也是可由基本联也是可由基本联系导出的联系。系导出的联系。系导出的联系。系导出的联系。消除冗余的方法:用消除冗余的方法:用消除冗余的方法:用消除冗余的方法:用分析方法分析方法分析方法分析方法消除冗余和使用关系数据设计理论(消除冗余和使用关系数据设计理论(消除冗余和使用关系数据设计理论(消除冗余和使用关系数据设计理论(规范规范规范规范化化化化)消除冗余。)消除冗余。)消除冗余。)消除冗余。三、概念设计三、概念设计例例5:将上例转换成全局将上例转换成全局e-r图。图。以数据字典和数据

36、流图为依据以数据字典和数据流图为依据根据数据字典中关于数据项之间根据数据字典中关于数据项之间的逻辑关系的逻辑关系学生学号性别入学时间姓名系别出生日期密码选修课程成绩选课时间课程名课程号先修课程号mn销售管理子系统分销售管理子系统分E-R图的设计图的设计销售管理子系统的主要功能:销售管理子系统的主要功能:n处理顾客和销售员送来的订单处理顾客和销售员送来的订单n工厂是根据订货安排生产的工厂是根据订货安排生产的n交出货物同时开出发票交出货物同时开出发票n收到顾客付款后,根据发票存根和信贷情况进行应收款处理收到顾客付款后,根据发票存根和信贷情况进行应收款处理 4.4.综合练习(了解)综合练习(了解)三

37、、概念设计三、概念设计例例6:某工厂管理信息系统某工厂管理信息系统n下图是第一层数据流图,虚线部分划出了系统边界下图是第一层数据流图,虚线部分划出了系统边界 销售管理子系统第一层数据流图销售管理子系统第一层数据流图 n上图把系统功能又分为上图把系统功能又分为4个子系统,下面四个图是第二层数据流图个子系统,下面四个图是第二层数据流图 接收订单接收订单 处理订单处理订单 开发票开发票 支付过账支付过账 分分E-R图的框架图的框架 n参照上层数据流图和数据字典,遵循准则,进行如下参照上层数据流图和数据字典,遵循准则,进行如下调整:调整:q(1)订单与订单细节是订单与订单细节是1 n的联系的联系q(2

38、)原订单和产品的联系实际上是订单细节和产品的联系。原订单和产品的联系实际上是订单细节和产品的联系。q(3)图图”开发票开发票”中中“发票主清单发票主清单”是一个数据存储,不必是一个数据存储,不必作为实体加入分作为实体加入分E-R图图q(4)工厂对大宗订货给予优惠工厂对大宗订货给予优惠n得到分得到分E-R图如下图所示图如下图所示 销售管理子系统的分销售管理子系统的分E-R图图 该厂劳动人事管理分该厂劳动人事管理分E-R图图该厂物资管理分该厂物资管理分E-R图图系统的基本系统的基本E-R优化的数据模型概念结构总ER模型一般数据结构关系、网状、层次选定的DBMS支持下的数据模式转换规则DBMS的特点

39、优化方法四、逻辑结构的设计四、逻辑结构的设计数据库逻辑结构设计分为两个步骤:一、将概念设计所得的数据库逻辑结构设计分为两个步骤:一、将概念设计所得的数据库逻辑结构设计分为两个步骤:一、将概念设计所得的数据库逻辑结构设计分为两个步骤:一、将概念设计所得的ERER图转换为关系模型;二、对关系模型进行优化。图转换为关系模型;二、对关系模型进行优化。图转换为关系模型;二、对关系模型进行优化。图转换为关系模型;二、对关系模型进行优化。1.ER1.ER图向关系模型的转换图向关系模型的转换n nERER图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:图向

40、关系模型的转换要遵循如下原则:一个实体型转换为一个关系模式。实体的属性就是关系的属性,一个实体型转换为一个关系模式。实体的属性就是关系的属性,一个实体型转换为一个关系模式。实体的属性就是关系的属性,一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。实体的码就是关系的码。实体的码就是关系的码。实体的码就是关系的码。对于实体间的联系则有以下不同的情况:对于实体间的联系则有以下不同的情况:对于实体间的联系则有以下不同的情况:对于实体间的联系则有以下不同的情况:一个一个一个一个1 1:1 1联系可以转换为一个独立的关系模式,也可以与任意联系可以转换为一个独立的关系模式,也可

41、以与任意联系可以转换为一个独立的关系模式,也可以与任意联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,联一端对应的关系模式合并。如果转换为一个独立的关系模式,联一端对应的关系模式合并。如果转换为一个独立的关系模式,联一端对应的关系模式合并。如果转换为一个独立的关系模式,联系名既是该关系模式的名字,则与该联系相连的各实体的码以及系名既是该关系模式的名字,则与该联系相连的各实体的码以及系名既是该关系模式的名字,则与该联系相连的各实体的码以及系名既是该关系模式的名字,则与该联系相连的各实体的码以及联系自身的属性均转换为关系的属性,每个实体的码均是该

42、关系联系自身的属性均转换为关系的属性,每个实体的码均是该关系联系自身的属性均转换为关系的属性,每个实体的码均是该关系联系自身的属性均转换为关系的属性,每个实体的码均是该关系的侯选码。如果与某一端实体对应的关系模式合并,则需要在该的侯选码。如果与某一端实体对应的关系模式合并,则需要在该的侯选码。如果与某一端实体对应的关系模式合并,则需要在该的侯选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式属性中加入另一个关系模式的码和联系本身的属性。关系模式属性中加入另一个关系模式的码和联系本身的属性。关系模式属性中加入另一个关系模式的码和联系本身的属性。关系模式属性中加入另一个关系模式的码和联系

43、本身的属性。ERER图向关系模型的转换要解决的问题是如何将实体和实体间的联图向关系模型的转换要解决的问题是如何将实体和实体间的联图向关系模型的转换要解决的问题是如何将实体和实体间的联图向关系模型的转换要解决的问题是如何将实体和实体间的联系转换为关系模式,如何确定这些关系模式的属性和码。系转换为关系模式,如何确定这些关系模式的属性和码。系转换为关系模式,如何确定这些关系模式的属性和码。系转换为关系模式,如何确定这些关系模式的属性和码。四、逻辑结构的设计四、逻辑结构的设计 1.ER1.ER图向关系模型的转换图向关系模型的转换n nERER图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如

44、下原则:图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:一个一个一个一个1 1:n n联系可以转换为一个独立的关系模式,也可以与联系可以转换为一个独立的关系模式,也可以与联系可以转换为一个独立的关系模式,也可以与联系可以转换为一个独立的关系模式,也可以与n n端端端端对应的关系模式合并。如果转换为一个独立的关系模式,联系名对应的关系模式合并。如果转换为一个独立的关系模式,联系名对应的关系模式合并。如果转换为一个独立的关系模式,联系名对应的关系模式合并。如果转换为一个独立的关系模式,联系名为关系模式名,与该联系相连的各实体的码以及联系自身的属性为关系模式名,与该联系相连的各实

45、体的码以及联系自身的属性为关系模式名,与该联系相连的各实体的码以及联系自身的属性为关系模式名,与该联系相连的各实体的码以及联系自身的属性均转换为关系的属性,而关系的码为各实体码的组合。若与均转换为关系的属性,而关系的码为各实体码的组合。若与均转换为关系的属性,而关系的码为各实体码的组合。若与均转换为关系的属性,而关系的码为各实体码的组合。若与n n端端端端对应的关系模式合并,对应的关系模式合并,对应的关系模式合并,对应的关系模式合并,1 1端的关键字及联系的属性并入端的关键字及联系的属性并入端的关键字及联系的属性并入端的关键字及联系的属性并入n n端的关系端的关系端的关系端的关系模式。码的选择

46、?模式。码的选择?模式。码的选择?模式。码的选择?一个一个一个一个mm:n n联系转换为一个关系模式。与该联系相连的各实体的联系转换为一个关系模式。与该联系相连的各实体的联系转换为一个关系模式。与该联系相连的各实体的联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实码以及联系本身的属性均转换为关系的属性,而关系的码为各实码以及联系本身的属性均转换为关系的属性,而关系的码为各实码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。体码的组合。体码的组合。体码的组合。三个或三个以上实体间的一个多元联系可以转换为一个关系模三个或三个以

47、上实体间的一个多元联系可以转换为一个关系模三个或三个以上实体间的一个多元联系可以转换为一个关系模三个或三个以上实体间的一个多元联系可以转换为一个关系模式。而与该多元联系相连的各实体的码以及联系本身的属性均转式。而与该多元联系相连的各实体的码以及联系本身的属性均转式。而与该多元联系相连的各实体的码以及联系本身的属性均转式。而与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。换为关系的属性,而关系的码为各实体码的组合。换为关系的属性,而关系的码为各实体码的组合。换为关系的属性,而关系的码为各实体码的组合。四、逻辑结构的设计四、逻辑结构的设计 1.ER1.

48、ER图向关系模型的转换图向关系模型的转换n nERER图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:学生(学号,姓名,性别,系别,出生时间,入学时间,密码)学生(学号,姓名,性别,系别,出生时间,入学时间,密码)学生(学号,姓名,性别,系别,出生时间,入学时间,密码)学生(学号,姓名,性别,系别,出生时间,入学时间,密码)课程(课程号,课程名,先修课程号)课程(课程号,课程名,先修课程号)课程(课程号,课程名,先修课程号)课程(课程号,课程名,先修课程号)选修(学号,课程号,选修时间,成绩)选修(学号,课

49、程号,选修时间,成绩)选修(学号,课程号,选修时间,成绩)选修(学号,课程号,选修时间,成绩)2.2.数据模型的优化数据模型的优化 3.3.设计用户子模式(外模式)设计用户子模式(外模式)四、逻辑结构的设计四、逻辑结构的设计例例7:将例将例5转换成关系模型。转换成关系模型。例例7:将例将例5转换成关系模型。转换成关系模型。1.ER1.ER图向关系模型的转换图向关系模型的转换n nERER图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:图向关系模型的转换要遵循如下原则:四、逻辑结构的设计四、逻辑结构的设计例例7:将例将例6销售管理子系统转换成

50、关系模型。销售管理子系统转换成关系模型。销售管理子系统的分销售管理子系统的分E-R图图 对每个实体定义的属性如下:对每个实体定义的属性如下:q顾客:顾客:顾客号顾客号,顾客名,地址,电话,信贷状况,账目余额,顾客名,地址,电话,信贷状况,账目余额q订单:订单:订单号订单号,顾客号,订货项数,订货日期,交货日期,顾客号,订货项数,订货日期,交货日期,工种号,生产地点工种号,生产地点q订单细则:订单细则:订单号,细则号订单号,细则号,零件号,订货数,金额,零件号,订货数,金额q应收账款:应收账款:顾客号,订单号顾客号,订单号,发票号,应收金额,支付日期,发票号,应收金额,支付日期,支付金额,当前余

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服