欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    【教学课件】第8章数据库设计.ppt

    • 资源ID:69865690       资源大小:858.50KB        全文页数:128页
    • 资源格式: PPT        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    【教学课件】第8章数据库设计.ppt

    第第8 8章章 数据库设计数据库设计8.18.1数据库设计概述数据库设计概述数据库设计的任务、内容和特点数据库设计的任务、内容和特点数据库设计的任务数据库设计的任务数数据据库库设设计计是是指指根根据据用用户户需需求求研研制制数数据据库库结结构构的的过过程。程。数据库设计的任务如图数据库设计的任务如图8.1所示。所示。数据库设计的任务数据库设计的任务图8.18.1.1.2 8.1.1.2 数据库设计的内容数据库设计的内容 数据库设计包括数据库设计包括数据库的结构设计数据库的结构设计和和数据库的行数据库的行为设计为设计两方面的内容。两方面的内容。(1)数据库的结构设计)数据库的结构设计 数据库的结构设计是指根据给定的应用环境,进行数据库的模式或子模式的设计。(2)数据库的行为设计)数据库的行为设计 数据库的行为设计是指确定数据库用户的行为和动作。8.1.1.3 8.1.1.3 数据库设计的特点数据库设计的特点“三分技术,七分管理,十二分基础数据三分技术,七分管理,十二分基础数据”是数据是数据库建设的基本规律。库建设的基本规律。结构(数据)设计应该和行为(处理)设计密切结结构(数据)设计应该和行为(处理)设计密切结合。合。也就是说,整个设计过程中要把数据库结构设计和也就是说,整个设计过程中要把数据库结构设计和对数据的处理设计密切结合起来。对数据的处理设计密切结合起来。数据库设计方法简述数据库设计方法简述数数据据库库设设计计方方法法目目前前可可分分为为四四类类:直直观观设设计计法法、规范设计法、计算机辅助设计法规范设计法、计算机辅助设计法和和自动化设计法。自动化设计法。1.直观设计法直观设计法直直观观设设计计法法也也叫叫手手工工试试凑凑法法,它它是是最最早早使使用用的的数数据库设计方法。据库设计方法。2 2规范设计法规范设计法 新奥尔良法新奥尔良法将数据库设计分成需求分析将数据库设计分成需求分析(分析用分析用户需求户需求)、概念设计、概念设计(信息分析和定义信息分析和定义)、逻辑设计、逻辑设计(设计实现设计实现)和物理设计和物理设计(物理数据库设计物理数据库设计)。下面简单介绍几种常用的规范设计方法下面简单介绍几种常用的规范设计方法。(1)基于)基于E-R模型的数据库设计方法模型的数据库设计方法(2)基于)基于3NF的数据库设计方法的数据库设计方法 具体设计步骤分为五个阶段:具体设计步骤分为五个阶段:设计企业模式,利用规范化得到的设计企业模式,利用规范化得到的3NF关系模式关系模式画出企业模式;画出企业模式;设计数据库的概念模式,把企业模式转换成设计数据库的概念模式,把企业模式转换成DBMS所能接受的概念模式,并根据概念模式导出所能接受的概念模式,并根据概念模式导出各个应用的外模式;各个应用的外模式;设计数据库的物理模式设计数据库的物理模式(存储模式存储模式)对物理模式进行评价;对物理模式进行评价;数据库实现。数据库实现。(3)基于视图的数据库设计方法)基于视图的数据库设计方法 基本思想基本思想是为每个应用建立自己的视图,然后再是为每个应用建立自己的视图,然后再把这些视图汇总起来合并成整个数据库的概念模式。把这些视图汇总起来合并成整个数据库的概念模式。合并过程中要解决以下问题:合并过程中要解决以下问题:消除命名冲突;消除命名冲突;消除冗余的实体和联系;消除冗余的实体和联系;进行模式重构,在消除了命名冲突和冗余后;需进行模式重构,在消除了命名冲突和冗余后;需要对整个汇总模式进行调整,使其满足全部完整性要对整个汇总模式进行调整,使其满足全部完整性约束条件。约束条件。规范设计法规范设计法从本质上来说仍然是手工设计方法,从本质上来说仍然是手工设计方法,其基本思想是过程迭代和逐步求精。其基本思想是过程迭代和逐步求精。计算机辅助设计法是指在数据库设计的某些过程中计算机辅助设计法是指在数据库设计的某些过程中模拟某一规范化设计的方法,并以人的知识或经验模拟某一规范化设计的方法,并以人的知识或经验为主导,通过人机交互方式实现设计中的某些部分。为主导,通过人机交互方式实现设计中的某些部分。一种实用的数据库设计方法至少应包括设计过程、一种实用的数据库设计方法至少应包括设计过程、设计技术、评价准则、信息需求和描述机制。设计技术、评价准则、信息需求和描述机制。8.1.3 数据库设计的步骤 1需求分析阶段需求分析阶段2概念设计阶段概念设计阶段3逻辑设计阶段逻辑设计阶段4物理设计阶段物理设计阶段 5数据库实施阶段数据库实施阶段 6数据库运行、维护阶段数据库运行、维护阶段分析系统需求设计概念结构设计逻辑结构优化数据模型决策评价决策评价设计物理结构决策评价实施数据库使用维护数据库6、数据库运行和、数据库运行和维护阶段维护阶段5、数据库实施阶、数据库实施阶段段4、数据库物理结、数据库物理结构设计阶段构设计阶段3、逻辑结构设计、逻辑结构设计阶段阶段1、系统需求分析、系统需求分析阶段阶段2、概念结构设计、概念结构设计阶段阶段数据库设计步骤数据库设计步骤系统需求分析阶段概念结构设计阶段逻辑结构设计阶段物理结构设计阶段数据库实施阶段数据库使用维护阶段运行、维护数据库运行、维护数据库数据入库,编制应用程序数据入库,编制应用程序将将E-R图转换成具体关系模图转换成具体关系模式式建立逻辑模型、用户视图建立逻辑模型、用户视图综合各个用户的应用需求综合各个用户的应用需求形成独立于形成独立于DBMS的概念的概念模型模型用用E-R图描述图描述安排物理存储,设计索引安排物理存储,设计索引图图8.3 数据数据库设计库设计步步骤骤设计阶设计阶段段设计设计描述描述 数数 据据 处处 理理 需求分析需求分析数据字典、全系数据字典、全系统统中数据中数据项项、数据流、数据存数据流、数据存储储的描述的描述数据流数据流图图和判定表和判定表(判定判定树树)数据字典中数据字典中处处理理过过程的描述程的描述概念概念结结构构设计设计概念模型概念模型(E-R图图)数据字典数据字典 系系统说统说明明书书。包括:。包括:(1)新系新系统统要求、要求、方案和概方案和概图图(2)反映新系反映新系统统信信息的数据流息的数据流图图逻辑结逻辑结构构设计设计某种数据模型某种数据模型关系模型关系模型 系系统结统结构构图图非关系模型非关系模型(模模块块结结构构图图)物理物理设计设计存存储储安排安排存取方法存取方法选择选择存取路径建立存取路径建立模模块设计块设计存取路径建立存取路径建立IPO表表实实施施阶阶段段编编写模式写模式装入数据装入数据数据数据库试库试运行运行程序程序编码编码编译联结编译联结测试测试运行运行维护维护 性能性能测试测试,转储转储恢复数据恢复数据库库重重组组和重构和重构新旧系新旧系统转换统转换、运、运行、行、维护维护(修正修正性、适性、适应应性、性、改善性改善性维护维护)8.2 8.2 系统需求分析系统需求分析8.2.1 系统需求分析的任务系统需求分析的任务1.调查分析用户活动调查分析用户活动具体做法是:具体做法是:(1)调查组织机构情况,包括该组织的部门组成情)调查组织机构情况,包括该组织的部门组成情况,各部门的职责和任务等。况,各部门的职责和任务等。(2)调查各部门的业务活动情况,包括各部门输入)调查各部门的业务活动情况,包括各部门输入和输出的数据与格式、所需的表格与卡片、加工和输出的数据与格式、所需的表格与卡片、加工处理这些数据的步骤、输入输出的部门等。处理这些数据的步骤、输入输出的部门等。(3)调查分析的方法)调查分析的方法 概念概念设计设计阶段阶段需求分析阶段需求分析阶段需求分析阶段熟悉熟悉业务业务活动活动明确明确用户用户需求需求确定确定系统系统边界边界分析分析系统系统功能功能分析分析系统系统数据数据编写编写分析分析报告报告调查调查机构机构情况情况数据字典数据流程图用户活动图用户数据库设计人员常用的调查方法有以下几种常用的调查方法有以下几种:跟班作业。跟班作业。通过亲身参加业务工作来了解业务活动通过亲身参加业务工作来了解业务活动的情况。这种方法可以比较准确地理解用户的需求,的情况。这种方法可以比较准确地理解用户的需求,但比较耗费时间。但比较耗费时间。开调查会。开调查会。通过与用户座谈来了解业务活动情况及通过与用户座谈来了解业务活动情况及用户需求。座谈时,参加者之间可以相互启发。用户需求。座谈时,参加者之间可以相互启发。询问。询问。对某些调查中的问题,可以找专人询问。对某些调查中的问题,可以找专人询问。设计用户调查表。设计用户调查表。如果调查表设计得合理,这种方如果调查表设计得合理,这种方法很有效,也易于为用户接受。法很有效,也易于为用户接受。查阅记录。查阅记录。即查阅与原系统有关的数据记录。即查阅与原系统有关的数据记录。2.收集和分析需求数据,确定系统边收集和分析需求数据,确定系统边界界(1)信息需求信息需求指目标范围内涉及的所指目标范围内涉及的所有实体、实体的属性以及实体间的联系有实体、实体的属性以及实体间的联系等数据对象,也就是用户需要从数据库等数据对象,也就是用户需要从数据库中获得信息的内容与性质。由信息要求中获得信息的内容与性质。由信息要求可以导出数据要求,即在数据库中需要可以导出数据要求,即在数据库中需要存储哪些数据。存储哪些数据。(2)处理需求处理需求指用户为了得到需求的信息指用户为了得到需求的信息而对数据进行加工处理的要求,包括对某种而对数据进行加工处理的要求,包括对某种处理功能的响应时间,处理的方式处理功能的响应时间,处理的方式(批处理或批处理或联机处理联机处理)等。等。(3)安全性和完整性的需求。安全性和完整性的需求。在定义信息在定义信息需求和处理需求的同时必须确定相应的安全需求和处理需求的同时必须确定相应的安全性和完整性约束。性和完整性约束。3.编写需求分析说明书编写需求分析说明书系统分析报告应包括如下内容:系统分析报告应包括如下内容:(1)系统概况、系统的目标、范围、背景、历史和)系统概况、系统的目标、范围、背景、历史和现状;现状;(2)系统的原理和技术,对原系统的改善;)系统的原理和技术,对原系统的改善;(3)系统总体结构与子系统结构说明;)系统总体结构与子系统结构说明;(4)系统功能说明;)系统功能说明;(5)数据处理概要、工程体制和设计阶段划分;)数据处理概要、工程体制和设计阶段划分;(6)系统方案及技术、经济、功能和操作上的可行)系统方案及技术、经济、功能和操作上的可行性。性。随系统分析报告提供下列附件:随系统分析报告提供下列附件:(1)系统的硬件、软件支持环境的选择及规格要求)系统的硬件、软件支持环境的选择及规格要求(所选择的数据库管理系统、操作系统、汉字平台、所选择的数据库管理系统、操作系统、汉字平台、计算机型号及其网络环境等计算机型号及其网络环境等)。(2)组织机构图、组织之间联系图和各机构功能业)组织机构图、组织之间联系图和各机构功能业务一览图。务一览图。(3)数据流程图、功能模块图和数据字典等图表。)数据流程图、功能模块图和数据字典等图表。8.2.2 系统需求分析的方法系统需求分析的方法 分分析析和和表表达达用用户户需需求求的的方方法法很很多多,主主要要方方法法有有自自顶顶向下向下和和自底向上自底向上两种两种(a)自顶向下的需求分析 (b)自底向上的需求分析8.2.2.1 数据流图数据流图 数据流图的绘制建立在数据流图的绘制建立在SADT的基础上,采取自上的基础上,采取自上而下的方法。首先,将整个系统作为一个处理而下的方法。首先,将整个系统作为一个处理(功能),绘制顶层图。然后,逐级细化,分解(功能),绘制顶层图。然后,逐级细化,分解成详略不同的多层数据流图,直到满足需要为止。成详略不同的多层数据流图,直到满足需要为止。图图8.5 系系统顶层统顶层数据流数据流图图数据流数据流图图使用的符号使用的符号说说明明一个数据流一个数据流图图的示例的示例 8.2.2.2 8.2.2.2 数据字典数据字典数数据据字字典典则则是是系系统统中中各各类类数数据据描描述述的的集集合合,是是进进行行详详细细的的数数据据收收集集和和数数据据分分析析所所获获得得的的主主要要成成果果。数数据据字字典典中中的的内内容容在在数数据据库库设设计计过过程程中中还还要要不不断断修修改改、充实和完善。充实和完善。一一般般来来说说数数据据字字典典中中应应包包括括对对以以下下几几部部分分数数据据的的描描述:述:1数据项数据项 数据项数据项是数据的最小单位,对数据项的描述应包括:是数据的最小单位,对数据项的描述应包括:数据项名、含义、别名、类型、长度、取值范围,数据项名、含义、别名、类型、长度、取值范围,以及与其他数据项的逻辑关系。以及与其他数据项的逻辑关系。2数据结构数据结构 数据结构数据结构是若干数据项有意义的集合。对数据结构是若干数据项有意义的集合。对数据结构的描述应包括:数据结构名,含义说明和组成该数的描述应包括:数据结构名,含义说明和组成该数据结构的数据项名。据结构的数据项名。3数据流数据流 数据流数据流可以是数据项,但更一般的情况下是可以是数据项,但更一般的情况下是数据结构,表示某一处理过程的输入或输出数据结构,表示某一处理过程的输入或输出数据。对数据流的描述应包括:数据流名,数据。对数据流的描述应包括:数据流名,说明,从什么处理过程来,到什么处理过程说明,从什么处理过程来,到什么处理过程去以及组成该数据流的数据结构或数据项去以及组成该数据流的数据结构或数据项。4.数据存储数据存储 数据存储定义的目的是确定最终数据库需要存储那些数据存储定义的目的是确定最终数据库需要存储那些信息。信息。(1)考察数据流图中每个数据存储信息,确定其是否)考察数据流图中每个数据存储信息,确定其是否应该而且可能由数据库存储,若是,则列入数据库需应该而且可能由数据库存储,若是,则列入数据库需要存储的信息范围。要存储的信息范围。(2)定义每个数据存储。对数据存储的描述应包括:)定义每个数据存储。对数据存储的描述应包括:数据存储名、存储的数据项说明、建立该数据存储数据存储名、存储的数据项说明、建立该数据存储的应用(即数据处理)、存取该数据存储的处理过的应用(即数据处理)、存取该数据存储的处理过程、数据量、存取频度(指每天或每小时或每分钟程、数据量、存取频度(指每天或每小时或每分钟存取几次)、操作类型(是检索还是更新)和存取存取几次)、操作类型(是检索还是更新)和存取方式(是批处理还是联机处理,是顺序存取还是随方式(是批处理还是联机处理,是顺序存取还是随机存取)等。机存取)等。5.处理过程处理过程(1)考察数据流图中的每个数据处理,确定正在设)考察数据流图中的每个数据处理,确定正在设计的数据库系统是否应该而且可能支持这个处理过计的数据库系统是否应该而且可能支持这个处理过程。如果应该而且可能支持,把这个功能列入数据程。如果应该而且可能支持,把这个功能列入数据库系统支持的应用范围。库系统支持的应用范围。(2)对对于于每每个个处处理理过过程程,进进行行严严格格定定义义,内内容容包包括括:处处理理过过程程名名、处处理理功功能能描描述述、处处理理要要求求、输输入入数数据据、输出数据等等。输出数据等等。需求分析注意点 确定用户需求是一件很困难的事情。这是因为:确定用户需求是一件很困难的事情。这是因为:第第一一,应应用用部部门门的的业业务务人人员员常常常常缺缺少少计计算算机机的的专专业业知知识识,而而数数据据库库设设计计人人员员又又常常常常缺缺乏乏应应用用领领域域的业务知识,因此相互的沟通往往比较困难。的业务知识,因此相互的沟通往往比较困难。第第二二,不不少少业业务务人人员员往往往往对对开开发发计计算算机机系系统统有有不不同同程程度度的的抵抵触触情情绪绪。有有的的认认为为需需求求调调查查影影响响了了他他们们的的工工作作,给给他他们们造造成成了了负负担担,特特别别是是新新系系统统的的建建设设常常常常伴伴随随企企业业管管理理的的改改革革,这这会会遇遇到到不不同同部部门不同程度的抵触。门不同程度的抵触。第三,应用需求常常在不断改变,使系统设计也常第三,应用需求常常在不断改变,使系统设计也常常要进行调整甚至要有重大改变。常要进行调整甚至要有重大改变。面对这些困难,设计人员特别应该注意:面对这些困难,设计人员特别应该注意:1用户参与的重要性用户参与的重要性2用原型法来帮助用户确定他们的需求用原型法来帮助用户确定他们的需求3预测系统的未来改变预测系统的未来改变8.3 8.3 概念结构设计概念结构设计 根据需求分析阶段形成的新系统需求分析说明书,根据需求分析阶段形成的新系统需求分析说明书,把用户的信息需求抽象为信息结构即概念模型的过把用户的信息需求抽象为信息结构即概念模型的过程就是概念结构设计。用程就是概念结构设计。用E-R图来描述现实世界的图来描述现实世界的概念模型。概念模型。逻辑逻辑设计设计阶段阶段概念结构设计阶段概念结构设计阶段概念设计阶段概念设计阶段合并合并取消取消冲突冲突修改修改重构重构消除消除冗余冗余数据字典数据流程图功能模块图需求需求分析分析阶段阶段抽象抽象数据数据设计设计局部局部视图视图局部E-R图初步E-R图基本E-R图8.3.1 8.3.1 概念模型的特点概念模型的特点 概概念念结结构构设设计计是是将将需需求求分分析析得得到到的的用用户户需需求求抽抽象为信息结构即概念模型的过程。象为信息结构即概念模型的过程。概概念念模模型型作作为为概概念念结结构构设设计计的的表表达达工工具具,为为数数据据库库提提供供一一个个说说明明性性结结构构,是是设设计计数数据据库库逻逻辑辑结结构构即即逻逻辑模型的基础。辑模型的基础。概念模型具备以下主要特点:概念模型具备以下主要特点:(1)概念模型是现实世界的一个真实模型)概念模型是现实世界的一个真实模型 概念模型能表达用户的各种需求,充分反映现实世概念模型能表达用户的各种需求,充分反映现实世界,包括事物和事物之间的联系、用户对数据的处界,包括事物和事物之间的联系、用户对数据的处理要求。理要求。(2)概念模型易于交流和理解。)概念模型易于交流和理解。概念模型是概念模型是DBA、应用开发人员和用户之间的主要、应用开发人员和用户之间的主要界面,因此,概念模型要表达自然、直观和容易理界面,因此,概念模型要表达自然、直观和容易理解,以便和不熟悉计算机的用户交换意见,用户的解,以便和不熟悉计算机的用户交换意见,用户的积极参与是保证数据库设计成功的关键。积极参与是保证数据库设计成功的关键。(3)概念模型易于修改和扩充。)概念模型易于修改和扩充。概念模型要能灵活地加以改变,以反映用户需求和概念模型要能灵活地加以改变,以反映用户需求和现实环境的变化。现实环境的变化。(4)概念模型易于向各种数据模型转换。)概念模型易于向各种数据模型转换。概念模型独立于特定的概念模型独立于特定的DBMS,因而更加稳定,能,因而更加稳定,能方便地向关系模型、网状模型或层次模型等各种数方便地向关系模型、网状模型或层次模型等各种数据模型转换。据模型转换。8.3.2 8.3.2 概念结构设计的方法与步骤概念结构设计的方法与步骤 设设计计概概念念结结构构通通常常有有自自顶顶向向下下、自自底底向向上上、逐逐步步扩扩张张和和混混合合策策略略等等4类类方方法法。其其中中最最经经常常采采用用的的策策略略是是自自底底向向上上方方法法。即即自自顶顶向向下下地地进进行行需需求求分分析析,然然后后再再自自底底向向上上地地设设计计概概念念结结构构,如如下下所示。所示。自顶向下需求分析与自底向上设计概念结构概念结构设计的步骤一般可分为两步:第一步是抽象数据并设计局部视图,第一步是抽象数据并设计局部视图,第二步是集成局部视图,得到全局的概念结构,第二步是集成局部视图,得到全局的概念结构,如下所示。如下所示。概念结构设计步骤概念结构设计步骤8.3.3 8.3.3 数据抽象与局部数据抽象与局部E-RE-R模型设计模型设计 1.数据抽象数据抽象 所所谓谓抽抽象象是是对对实实际际的的人人、物物、事事和和概概念念进进行行人人为为处处理理,它它抽抽取取人人们们关关心心的的共共同同特特性性,忽忽略略非非本本质质的的细细节节,并并把把这这些些特特性性用用各各种种概概念念精精确确地地加加以以描描述述,这这些概念组成了某种模型。些概念组成了某种模型。一般有三种数据抽象:一般有三种数据抽象:分类、聚集分类、聚集和和概括概括。分类分类(Classification)分类定义某一类概念作为现实世界中一组对象的分类定义某一类概念作为现实世界中一组对象的类型,将一组具有某些共同特性和行为的对象抽象类型,将一组具有某些共同特性和行为的对象抽象为一个实体。分类抽象了对象值和型之间是为一个实体。分类抽象了对象值和型之间是“成员成员”的语义。在的语义。在E-R模型中,实体集就是这种抽象。模型中,实体集就是这种抽象。例如,在生产管理中,例如,在生产管理中,“电脑电脑”是一件产品,表示是一件产品,表示“电脑电脑”是产品中的一员,他具有产品共同的特性是产品中的一员,他具有产品共同的特性和行为。和行为。聚集聚集(Aggregation)聚集是定义某一类型的组成部分,它抽象了对象聚集是定义某一类型的组成部分,它抽象了对象内部类型和对象内部内部类型和对象内部“组成部分组成部分”的语义。若干的语义。若干属性的聚集组成了实体型。例如把实体集属性的聚集组成了实体型。例如把实体集“产品产品”的的“产品号产品号”、“产品名产品名”、“价格价格”、“性性能能”等属性聚集为实体型等属性聚集为实体型“产品产品”。概括概括(Generalization)概括定义了类型之间的一种子集联系,它抽象类型概括定义了类型之间的一种子集联系,它抽象类型之间的之间的“所属所属”的语义。例如在电脑工厂中,的语义。例如在电脑工厂中,“产品产品”是个实体集,是个实体集,“台式机台式机”、“笔记本电脑笔记本电脑”也是实体集,但也是实体集,但“台式机台式机”、“笔记本电脑笔记本电脑”都是都是“产品产品”的子集。我们把的子集。我们把“产品产品”称为超类称为超类(Superclass),“台式机台式机”、“笔记本电脑笔记本电脑”称为称为“产品产品”的子类(的子类(Subclass)。)。2.2.局部局部E-RE-R模型设计模型设计 一般说来,在给定的应用环境中,区别属性与实体一般说来,在给定的应用环境中,区别属性与实体要遵循下列两条原则:要遵循下列两条原则:属性不能再具有需要描述的性质。即属性必须是属性不能再具有需要描述的性质。即属性必须是不可分的数据项,不能再由另一些属性组成。不可分的数据项,不能再由另一些属性组成。属性不能与其他实体有联系。在属性不能与其他实体有联系。在E-R图中所有的图中所有的联系必须是实体间的联系,而不能有属性与实体之联系必须是实体间的联系,而不能有属性与实体之间发生联系。间发生联系。仓库作为一个属性或实体材料仓库材料号材料名价格仓库号仓库名地址存于1n材料材料号材料名价格仓库电话一般说来,视图集成可以有两种方式:一般说来,视图集成可以有两种方式:多个分多个分E-R图一次集成。图一次集成。逐步集成,用累加的方式一次集成两个分逐步集成,用累加的方式一次集成两个分E-R图。图。第第1种方法比较复杂,做起来难度较大。种方法比较复杂,做起来难度较大。第第2种方法每次只集成两个分种方法每次只集成两个分E-R图,可以降低复杂图,可以降低复杂 度。度。图图8.7 生产部门的局部生产部门的局部E-R图图产品零件产品号产品名性能零件号零件名材料名组装mn耗用量零件数图图8.8 供应部门的局部供应部门的局部E-R图图产品仓库产品号产品名价格仓库号仓库名地点使用mn电话使用量存放量材料材料号材料名价格存放mn8.3.4 视图的集成视图的集成 无论采用哪种方式,每次集成局部无论采用哪种方式,每次集成局部E-R图时都需图时都需要分两步走。要分两步走。(1)合并合并。解决各分。解决各分E-R图之间的冲突,将各分图之间的冲突,将各分E-R图合并起来生成初步图合并起来生成初步E-R图。图。(2)修改和重构。修改和重构。消除不必要的冗余,生成基本消除不必要的冗余,生成基本E-R图。图。视图集成视图集成8.3.4.1 合并局部合并局部E-R图,生成初步图,生成初步E-R图图 各分各分E-R图之间的冲突主要有图之间的冲突主要有3类:属性冲突、类:属性冲突、命名冲突和结构冲突。命名冲突和结构冲突。1属性冲突属性冲突(1)属性域冲突,即属性值的类型、取值范围)属性域冲突,即属性值的类型、取值范围 或取值集合不同。或取值集合不同。(2)属性取值单位冲突。)属性取值单位冲突。2命名冲突命名冲突(1)同同名名异异义义,即即不不同同意意义义的的对对象象在在不不同同的的局局部部应应用中具有相同的名字。用中具有相同的名字。(2)异异名名同同义义(一一义义多多名名),即即同同一一意意义义的的对对象象在在不同的局部应用中具有不同的名字。不同的局部应用中具有不同的名字。3结构冲突结构冲突(1)同一对象在不同应用中具有不同的抽象。)同一对象在不同应用中具有不同的抽象。(2)同同一一实实体体在在不不同同分分E-R图图中中所所包包含含的的属属性性个个数数和和属性排列次序不完全相同。属性排列次序不完全相同。(3)实体间的联系在不同的分)实体间的联系在不同的分E-R图中为不同的类型。图中为不同的类型。例如,下页图中零件与产品之间存在多对多的联系例如,下页图中零件与产品之间存在多对多的联系“构成构成”。产品、零件与供应商三者之间还存。产品、零件与供应商三者之间还存在多对多的联系在多对多的联系“供应供应”,这两个联系互相不,这两个联系互相不能包含(读者想一想为什么),在合并两个分能包含(读者想一想为什么),在合并两个分E-R图时就应把它们综合起来。图时就应把它们综合起来。合并两个分合并两个分E-R图图8.3.4.2 8.3.4.2 修改与重构,消除不必要的冗修改与重构,消除不必要的冗 余,生成基本余,生成基本E-RE-R图图 所谓冗余的数据是指可由基本数据导出所谓冗余的数据是指可由基本数据导出的数据,冗余的联系是指可由其他联系导出的数据,冗余的联系是指可由其他联系导出的联系的联系。消除冗余主要采用分析方法,即以数据字典和数据消除冗余主要采用分析方法,即以数据字典和数据流图为依据,根据数据字典中关于数据项之间逻辑流图为依据,根据数据字典中关于数据项之间逻辑关系的说明来消除冗余。在下页图中,关系的说明来消除冗余。在下页图中,Q3=Q1Q2,Q4=Q5,所以,所以Q3 和和Q4是冗余数据,可以消去。并是冗余数据,可以消去。并且由于且由于Q3消去,产品与材料间消去,产品与材料间m n的冗余联系也应的冗余联系也应消去。消去。消除冗余消除冗余但并不是所有冗余数据与冗余联系都必须加以消除,但并不是所有冗余数据与冗余联系都必须加以消除,有时为了提高效率,不得不以冗余信息作为代价。有时为了提高效率,不得不以冗余信息作为代价。例例如如,若若物物资资部部门门经经常常要要查查询询各各种种材材料料的的库库存存量量,如如果果每每次次都都要要查查询询每每个个仓仓库库中中此此种种材材料料的的库库存存,再再对对它它们们求求和和,查查询询效效率率就就太太低低了了。所所以以应应保保留留Q4,同同时时把把Q4=Q5定定义义为为Q4的的完完整整性性约约束束条条件件。每每当当Q5修修改改后后,就就触触发发该该完完整整性性检检查查例例程程,对对Q4作作相相应应的的修改。修改。除分析方法外,还可以用规范化理论来消除冗除分析方法外,还可以用规范化理论来消除冗余。在规范化理论中,函数依赖的概念提供了消除余。在规范化理论中,函数依赖的概念提供了消除冗余联系的形式化工具。具体方法如下:冗余联系的形式化工具。具体方法如下:(1)确定分)确定分E-R图实体之间的数据依赖。图实体之间的数据依赖。(2)求求FL的的最最小小覆覆盖盖GL(求求最最小小覆覆盖盖的的方方法法可可参参见见7.6节)。节)。差集为:差集为:D=FLGL。逐一考察逐一考察D中的函数依赖,确定是否是冗余的联中的函数依赖,确定是否是冗余的联系,若是,就把它去掉。由于规范化理论受到泛关系,若是,就把它去掉。由于规范化理论受到泛关系假设的限制,应注意下面两个问题:系假设的限制,应注意下面两个问题:(1)冗余的联系一定在)冗余的联系一定在D中,而中,而D中的联系不一定是中的联系不一定是冗余的。冗余的。(2)当实体之间存在多种联系时要将实体之间的联)当实体之间存在多种联系时要将实体之间的联系在形式上加以区分。系在形式上加以区分。例例2 某工厂信息系统的视图集成。某工厂信息系统的视图集成。图图8.17、图、图8.23、图、图8.21分别为该厂销售、物资和分别为该厂销售、物资和劳动人事管理的分劳动人事管理的分E-R图。把这图。把这3个分个分E-R图进行集图进行集成过程中解决了以下问题:成过程中解决了以下问题:(1)异名同义,)异名同义,“项目项目”和和“产品产品”含义相同。某含义相同。某个个“项目项目”实质上是指某个实质上是指某个“产品产品”的生产。统一的生产。统一用用“产品产品”作实体名。作实体名。E-R图实例职工号姓名性别年龄职称书号书名简介价格课程名学分课程号专业系班编号成绩学员学号姓名性别年龄教师参考书讲授课程mn1选修mn领导1n学生组成班级n1实体集实体集实体集实体集联系联系联系联系属性属性属性属性产品零件性能产品号产品名零件号零件名材料名组装mn耗用量产品仓库成品名成品号价格仓库号仓库名地址使用mn电话使用量存储量材料材料号材料名价格存储mn产品零件仓库材料组装消耗存储产品号产品名价格性能使用用量材料号材料名价格存储量仓库号仓库名地址电话材料名耗用量零件数消耗量mnnmmmnn零件号零件名总体E-R模型(改进)产品零件仓库材料组装消耗存储产品号产品名价格性能使用用量材料号材料名价格存储量仓库号仓库名地址电话零件号零件名零件数消耗量mnmmmnnn8.3.5 8.3.5 采用采用UMLUML类图的概念对象建模类图的概念对象建模 在在UML类类图图中中,类类表表示示为为三三个个部部分分组组成成的的方方框框:顶顶端端给给出出了了类类的的名名称称,例例如如材材料料;中中间间部部分分给给出出了了该该类类的的属属性性,例例如如材材料料类类具具有有材材料料号号,材材料料名名,价价格格等等属属性性;最最下下面面的的部部分分给给出出了了可可以以应应用用到到这这些些对对象的操作象的操作,这是,这是E-R图中所没有的。图中所没有的。UML概念对象建模示例如图:概念对象建模示例如图:图8.11联系类型称为关联联系类型称为关联(association),联系的实例被称,联系的实例被称为链为链(link)。二元关联表示为一条连接参与类的线段,而且可以二元关联表示为一条连接参与类的线段,而且可以有一个名称。有一个名称。联系属性称为链属性联系属性称为链属性(links attribute),置于方框,置于方框中,该方框与关联之间通过一条虚线相连。中,该方框与关联之间通过一条虚线相连。联系的约束以联系的约束以min.max的形式指定,采用星号的形式指定,采用星号(*)表示参与部分无最大值限制。)表示参与部分无最大值限制。在在UML中有两类联系:关联和聚合。中有两类联系:关联和聚合。聚合的意思是表示整个对象和它的组成部分之间的聚合的意思是表示整个对象和它的组成部分之间的联系,比如产品与零件之间。联系,比如产品与零件之间。联系的名称在联系的名称在UML中是可选的,联系属性被表中是可选的,联系属性被表示在方框中,并通过一条虚线与代表关联示在方框中,并通过一条虚线与代表关联/聚合的线聚合的线段相连接。段相连接。8.4 8.4 逻辑结构设计逻辑结构设计逻辑结构设计的任务和步骤逻辑结构设计的任务和步骤逻辑结构设计的任务逻辑结构设计的任务就就是是把把概概念念结结构构设设计计阶阶段段设设计计好好的的基基本本E-R图图转转换换为为与与选选用用的的DBMS产产品品所所支支持持的的数数据据模模型型相相符符合合的逻辑结构。的逻辑结构。设计逻辑结构时一般要分三步进行设计逻辑结构时一般要分三步进行:1.将概念结构转化为一般的关系、网状、层次模型。将概念结构转化为一般的关系、网状、层次模型。2.将转化来的关系、网状、层次模型向特定将转化来的关系、网状、层次模型向特定DBMS支持下的数据模型转换。支持下的数据模型转换。3.对数据模型进行优化。对数据模型进行优化。4.如图所示:如图所示:逻辑结构设计的三个步骤逻辑结构设计的三个步骤 物理物理设计设计阶段阶段逻辑结构设计阶段逻辑结构设计阶段逻辑结构设计阶段逻辑结构设计阶段模式模式优化优化设计设计用户用户子子模式模式概念概念设计设计阶段阶段转化转化为为数据数据模型模型关系关系规范规范化化逻辑模型基本E-R图8.4.2 E-R8.4.2 E-R图向数据模型的转换图向数据模型的转换 E-R图向关系模型的转换要解决的问题是如何图向关系模型的转换要解决的问题是如何将实体和实体间的联系转换为关系模式,如何确定将实体和实体间的联系转换为关系模式,如何确定这些关系模式的属性和码。这些关系模式的属性和码。关系模型的逻辑结构是一组关系模式的集合。关系模型的逻辑结构是一组关系模式的集合。所以将所以将E-R图转换为关系模型实际上就是要将图转换为关系模型实际上就是要将实体、实体属性和实体之间的联系转换为一组关系实体、实体属性和实体之间的联系转换为一组关系模式,这种转换一般遵循如下原则:模式,这种转换一般遵循如下原则:1一个实体型转换为一个关系模式。实体的属性就一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。是关系的属性,实体的码就是关系的码。2对于实体间的联系则有以下不同的情况:对于实体间的联系则有以下不同的情况:(1)一个)一个1 1联系可以转换为一个独立的关系模联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。如果式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式的实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。属性中加入另一个关系模式的码和联系本身的属性。(2)一个)一个1 n联系可以转换为一个独立的关系模式,联系可以转换为一个独立的关系模式,也可以与也可以与n端对应的关系模式合并。如果转换为一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系以及联系本身的属性均转换为关系的属性,而关系的码为的码为n端实体的码。端实体的码。(3)一个)一个m n联系转换为一个关系模式。与该联系联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体码的组成关系的码或关系码的一系的属性,各实体码的组成关系的码或关系码的一部分。部分。(4)3个或个或3个以上实体间的一个多元联系可以转换个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,各实体以及联系本身的属性均转换为关系的属性,各实体码组成关系的码或关系码的一部分。码组成关系的码或关系码的一部分。(5)具有相同码的关系模式可合并。)具有相同码的关系模式可合并。实体向关系模式的转换实体向关系模式的转换产品产品(产品号,产品名,性能,价格)零件零件(零件号,零件名)材料材料(材料号,材料名,价格)仓库仓库(仓库号,车库名,地址,电话)产品零件仓库

    注意事项

    本文(【教学课件】第8章数据库设计.ppt)为本站会员(wuy****n92)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档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  

    收起
    展开