欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    数据库与软件开发基础第八章.ppt

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

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

    数据库与软件开发基础第八章.ppt

    数据库设计方法 需求分析 概念结构设计 逻辑结构设计 数据库的物理设计 数据库的实施与维护,第八章 数据库设计,1,数据库设计是要在一个给定的应用环境中,通过合理的逻辑设计和有效的物理设计,构造较 优的数据库模式,建立数据库及其应用系统,满 足用户的各种信息需求。是数据库在应用领域的主要研究课题,8.1 数据库设计方法,2,目前的数据库设计方法:规范化设计法 按软件工程思想,将设计分为若干阶段,明确规定各阶段的任务,自顶向下逐步求精,数据库设计任务:,8.1 数据库设计方法,3,设计步骤:,8.1 数据库设计方法,调查、收集 信息需求,处理需求 安全需求,性能需求 完整性需求 分析、整理出 需求说明书,用概念数据模型来表示数据及其联系,为进一步的设计提供依据,产生概念数据模型:ER图,将概念数据模型表示的数据模式转换成用所选DBMS支持的数据模型表示的符合规范的逻辑模式、外模式设计数据库的逻辑结构,设计数据库的内模式,包括:文件结构、存取路径、索引和存储空间的分配等,与DBMS、OS、硬件有关。,用所选的DBMS提供的DDL定义数据模式装入数据用合适的开发工具编制应用程序联机调试并试运行进行性能分析,若不符合要求,则调整相关部分的设计或修改应用程序,直至能高效、稳定、正确地运行,4,8.1 数据库设计方法,需求分析,概念结构设计,逻辑结构设计,物理结构设计,设计阶段与数据库模式的对应关系:,5,8.2 需求分析,明确要“做什么?”,而不考虑“怎么做?”,6,二、需求分析的重点 数据、处理 用户的信息要求 用户用到的数据及其结构,确定数据库中 应存储哪些数据 用户的处理要求 要求完成的处理功能,响应时间,涉及的 数据,处理方式等 对数据的安全性、完整性的要求,8.2 需求分析,7,三、步骤,8.2 需求分析,8,8.2 需求分析,包括:名字,别名,使用地点与方式,内容描述和补充信息;,9,概念结构设计:将需求分析得到的用户需求抽象为信息结构,即概念模型的过程就是概念结构设计。,8.3 概念结构设计,概念结构独立于数据库逻辑结构,也独立于DBMS。是现实世界与机器世界的中介,一方面能够充分反映现 实世界(实体与实体之间的联系),另一方面又易于向 关系等各种数据模型转换。是现实世界的一个真实模型,易于理解,便于和不熟悉 计算机的用户交换意见,使用户易于参与,当现实世界 需求改变时,概念结构可以很容易地作相应调整。概念结构设计是整个数据库设计的关键 设计工具:ER图,10,8.3 概念结构设计,11,概念模型:是现实世界到机器世界的一个过渡的中间层次。,概念模型特点:概念模型是对现实世界的抽象和概括,它真实、充分地 反映了现实世界中事物和事物之间的联系,能满足用户 对数据的处理要求。由于概念模型简洁、明晰、独立于机器,很容易理解 概念模型易于更改 概念模型容易向关系、网状、层次等各种数据模型转换,8.3.1 概念模型,12,1.实体(Entity):客观存在并可相互区分的事物叫实体 例如:一个职工,一个纳税人,一个部门,一次纳税申报2.属性(Attribute):属性是实体具有的某一特性 一个实体可以由若干个属性来描述。例如:纳税人由纳税人识别号,名称,电话,行业,从业人数 钟表制造业,2500,),8.3.1 概念模型,概念模型涉及的主要概念:,13,码(Key)唯一标识实体的属性集称为码。例如,纳税人识别号是纳税人实体的码域(Domain)属性的取值范围 例如:名称域为字符串集合,从业人数域为正整数5.实体型(Entity type)用实体名及其属性名集合来抽象和描述同类实体。例如,纳税人(纳税人识别号、名称、电话、行业、从业人数)是一个实体型,8.3.1 概念模型,14,实体集(Entity set)同型实体的集合称为实体集。例如,全体纳税人是一个实体集7.联系(Relationship):两类:实体内部的联系,如属性之间的联系;实体之间的联系 两个实体型之间的联系可以分为三类:一对一联系、一对多联系、多对多联系,8.3.1 概念模型,15,一对一联系(1:1):若对于实体集A中每一个实体,实体集B中至多有一个实体与之联系,反之亦然,则称实体集A与实体集B具有一对一联系,记为1:1。一对多联系(1:n):若对于实体集A中的每一个实体,实体集B中有n个实体(n=0)与之联系;反之,对于实体集B中的每一个实体,实体集A中至多一个实体与之联系,则称实体集A与实体集B具有一对多的联系,记为1:n多对多联系(m:n):若对于实体集A中的每一个实体,实体集B中有n个实体(n=0)与之联系;反之,对于实体集B中的每一个实体,实体集A中也有m个实体(m=0)与之联系,则称实体集A与实体集B具有多对多的联系,记为m:n,8.3.1 概念模型,16,概念模型最常用的表示方法是:实体联系方法(Entity-Relationship Approach)用E-R图来描述现实世界某一组织的概念模型。在E-R图中:用长方形表示实体型,在框内写上实体名 用椭圆形表示实体属性 用无向边把连接实体与其属性 用菱形表示实体间的联系,菱形框内写上联系名 用无向边把连接菱形与有关实体,在无向边旁标上 联系的类型(1:1,1:n,m:n),若联系也有属性,则把属性和菱形也用无向边连上,8.3.1 概念模型,17,8.3.1 概念模型,18,(a)实体与属性,(b)实体与实体间联系,8.3.1 概念模型,19,两实体间的联系(不考虑属性),8.3.1 概念模型,20,三实体间的联系(不考虑属性),8.3.1 概念模型,21,同室,1,学生,n,同一实体集内一对多的联系,8.3.1 概念模型,22,实体属性信息:仓库:仓库号、面积、电话号码、仓库主任的职工号 零件:零件号、名称、规格、价格、描述 供应商:供应商号、姓名、地址、电话号码、帐号 项目:项目号、预算、开工日期 职工:职工号、姓名、年龄、职称,8.3.1 概念模型,某工厂物资管理的概念模型,23,实体及其属性图,8.3.1 概念模型,24,实体间联系信息:一个仓库可以存放多种零件,一种零件可以存放在 多个仓库中,因此仓库和零件具有多对多的联系。职工之间具有领导被领导的关系。即仓库主任领导 若干保管员,因此职工实体集中具有一对多的联系。供应商、项目和零件三者间具有多对多联系。即 一个供应商可以供给若干项目多种零件,每个项目 可以使用不同供应商供应的零件,每种零件可由不 同供应商供给。,8.3.1 概念模型,25,实体及其联系图,8.3.1 概念模型,26,1.局部视图设计步骤:对需求分析阶段收集到的数据进行分类、组织 形成实体、实体的属性 确定实体之间的联系类型,设计分E-R图。2.设计分E-R图:选择局部应用 依据:中层的数据流图较好地反映了局部应用 对每个局部应用逐一设计分E-R图,8.3.2 局部视图设计,27,3.确定实体、属性、联系:,“属性”不具有再描述的性质,是不可再分的数据项“属性”不能与其它实体具有联系 原则:为了简化E-R图,尽量作为属性对待,实体是客观世界中的事务,反映客观存在的对象 从数据流图和数据字典中抽取“实体”和“属性”的区分:,8.3.2 局部视图设计,28,4.举例:,8.3.2 局部视图设计,29,零配件采购子系统的ER图设计:,8.3.2 局部视图设计,注:系统不复杂,从第一层流图入手,若复杂,应从更下层的流图入手,设计各个分ER图,由各个分ER图汇总成为局部应用的分ER图。,30,根据需求分析:产品和零件之间是多对多的联系 供应商和零件之间是多对多的联系(有属性“单价”)产品、零件、供应商三者之间还存在多对多的联系问题:零件与订货单之间是什么联系?已列出的实体和联系是否充分表示了应用的需求?调整E-R图:依据:区分实体和属性的准则、数据流图、数据字典,8.3.2 局部视图设计,31,调整E-R图:订单细节上升为实体。订单:由订单号、供应商地址、日期等信息构成;订单细节:包括所订的零件号、数量。订单与订单细节两个实体间的联系:为1:n联系。订单细节与零件之间为1:1联系。报价反映的是供应商与零件之间的多对多联系,不必 作为实体对待。,8.3.2 局部视图设计,32,8.3.2 局部视图设计,33,实体的属性:产品:产品号,产品名称,预算 零件:零件号,零件名,规格,现有库存 供应商:供应商号,供应商名,地址,电话号码 订单:订单号,供应商名,供应商地址,日期 订单细节:订单号,细节号,零件号,订购数量,8.3.2 局部视图设计,34,视图集成的两种方式:多个分E-R图一次集成 逐步集成 用累加的方式,一次集成两个分E-R图。,集成E-R图步骤:消除冲突,合并分E-R图,生成初步E-R图;进行修改,消除不必要的冗余,生成基本E-R图,8.3.3 视图的集成,35,消除冲突,合并分E-R图,生成初步E-R图 三类冲突:属性冲突、命名冲突、结构冲突(1)属性冲突:属性取值单位冲突。属性域的冲突,即属性值的类型、取值范围不同。解决:共同协商解决(2)命名冲突:异名同义:各个子系统对同一对象取了不同的名字同名异义,对不同的对象取了相同的名字解决:共同协商解决,8.3.3 视图的集成,36,(3)结构冲突(3种形式):同一对象在不同应用中作了不同的抽象。解决:遵循区分属性和实体的准则,使同一对象 在整个系统中具有相同的抽象。同一实体在不同的分E-R图中属性的组成不同,或个数不同,或次序不同。解决:取各分E-R图中同一实体属性的并,然后 再适当调整属性的次序。例如:,8.3.3 视图的集成,37,例如:产品-产品号、产品名 产品名、产品号、数量、预算 产品号、生产部门代码、数量-产品号、产品名、生产部门代码、数量、预算实体间的联系在不同的分E-R图中为不同的类型解决:根据应用环境的语义来调整例如:产品、零件与供应商“供应”(多对多)零件与产品“构成”(多对多)这两个联系互相不能包含,合并时把它们综合起来,8.3.3 视图的集成,38,8.3.3 视图的集成,39,2.消除不必要的冗余,设计基本E-R图 冗余的数据,或者实体间冗余的联系,消除冗余的方法:通过分析(根据语义)找出冗余并消除,8.3.3 视图的集成,40,8.3.3 视图的集成,41,说明:为了提高查询效率,可以保留一些冗余数据 根据需求保留冗余数据 应定义完整性约束条件,保证数据库的完整性,例如:应用需经常查询各种零件的库存量,每次查询每个仓库某零件的库存,再求和,定义完整性约束:零件的库存该零件在各仓库的存放量,8.3.3 视图的集成,42,任务:把概念结构设计阶段设计好的基本E-R图转换为与选用的具体机器上的DBMS产品所支持的数据模型相符合的逻辑结构。步骤:将概念结构向一般关系模型转化。将第一步得到的结构转换为特定的DBMS支持下 的数据模型。依据应用的需求和具体的DBMS的特征进行调整 与完善。,8.4 逻辑视图设计,43,转换核心:实体、实体间的联系 关系模式 确定关系模式的属性和码 方法:实体:将每个实体转换为一个关系,实体的属性即为关系的属性,实体的码即为关系的码 实体间的联系:1:1 在两个实体转换成的两个关系中任意一个关系的属性中加入另一个关系的码,8.4.1 E-R图向关系模型的转换,44,例如:某工厂中每个车间生产一种产品,转换:每个实体转换为一个关系 车间(车间号、车间名、车间主任代码、电话号码)产品(产品号、产品名、规格),8.4.1 E-R图向关系模型的转换,45,8.4.1 E-R图向关系模型的转换,46,实体间的联系:1:n 在n端实体转换成的关系中加入1端实体转换成的关系码。例如:部门实体与职工实体之间联系为1:n转换为:部门(部门号、部门名、电话号码)职工(职工号、职工名、性别、年龄、部门号),8.4.1 E-R图向关系模型的转换,47,实体间的联系:m:n 将联系转换为关系,关系的属性为诸个实体的码加上联系具有的属性,而关系的码则为诸实体的码的组合。例如:产品实体与零件实体之间是m:n的联系,转换成关系模式:产品(产品号、产品名、规格)零件(零件号、零件名、库存量)组成(产品号、零件号、数量),8.4.1 E-R图向关系模型的转换,48,举例:将P150图8-18的E-R图转换为关系模型转换成关系模式:产品(产品号、产品名、规格)零件(零件号、零件名、库存量)产品构成(产品号、零件号、数量)供应商(供应商号、供应商名、地址、电话号码)零件报价(零件号、供应商号、单价)供应(产品号、零件号、供应商号、数量)订单细节(订单细节号、数量、订单号、零件号)订单(订单号、日期),8.4.1 E-R图向关系模型的转换,49,8.4.2 数据模型的调整和完善,50,允许任何顾客查询产品号、产品名、规格、单价,设计用户子模式根据局部应用需求、DBMS特点,使用更符合用户习惯的别名,对不同级别的用户定义不同的视图,举例:部门(部门号、部门名称、经理姓名)单位(单位代码、名称、领导姓名)解决:定义视图CREATE VIEW UNIT(UNO,NAME,LEADER)AS SELECT DNO,DEPTNAME,MGR FROM DEPT;,举例:产品(产品号、产品名、规格、单价、生产车间、生产负责人、技术数据、测试结果),允许销售部门查询产品号、产品名、规格、单价 生产车间、生产负责人、,解决:为一般顾客和产品销售部门各定义一个视图,保证安全性,8.4.2 数据模型的调整和完善,51,设计用户子模式根据局部应用需求、DBMS特点,简化用户对系统的使用,使用更符合用户习惯的别名,对不同级别的用户定义不同的视图保证安全性,可将某些应用中经常用到的复杂查询定义为视图,用户每次只对定义好的视图进行查询,使用户感到简单直观、易于理解。,8.4.2 数据模型的调整和完善,52,数据库的物理结构:数据库在实际的物理设备上的存储结构和存取方法。数据库的物理设计:对设计好的逻辑数据模型选择一个最符合应用要求的物理结构。物理设计完全依赖于给定的硬件环境和数据库产品。,8.5 数据库的物理设计,53,例如:选择属性列作为次码建立次索引 根据应用要求选择属性列建立组合索引 根据数据库产品提供功能建立其它类型的索引,确定系统配置 设置系统配置变量,以适应应用环境的要求,存取路径的选择和调整 对同一数据存储一般可建立多条存取路径(索引),例如:同时使用数据库的用户数,同时打开的数据库 对象数,使用缓冲区长度、个数,时间片大小,数据库的大小,装填因子,锁的数目等,参数值影响存取时间和存储空间的分配,物理设计时要根据应用环境确定这些参数值,使系统性能最优。,8.5 数据库的物理设计,54,数据库实施:设计人员用DBMS提供的数据定义语言和其它实用程序,将数据库逻辑设计和物理设计结果严格描述出来,成为DBMS可以接受的源代码;经过调试产生目标模式,然后组织数据入库的过程。,实施阶段的两项重要工作:数据的载入 应用程序的编码和调试,8.6 数据库的实施和维护,55,一、数据的载入和应用程序的调试困难:数据量很大 数据来源不同 数据的组织方式、结构和格式与新的数据库有差距解决:组织数据录入 将各类源数据从各个局部应用中抽取出来,输 入计算机,再分类转换,最后综合成符合新设计的 数据库结构的形式,输入数据库。注意:检验数据,防止不正确数据入库,8.6 数据库的实施和维护,56,方法:原系统为手工系统 设计一个数据录入子系统 原系统为计算机管理系统 设计数据转换程序 利用DBMS的数据转换工具注意:要保证在新的应用运行时,数据的正确、完整;,组织数据入库的同时,调试应用程序。,8.6 数据库的实施和维护,57,二、数据库的试运行 有一小部分已输入数据库后,就可以开始对数据库 系统进行联合调试,这称为数据库的试运行。测试内容:测试应用程序的功能是否满足设计要求 试运行的工作重点 测试系统的性能指标,分析其是否达到设计目标。只有小部分数据量的情况下很难做到这一点 注意:应首先调试运行DBMS的恢复功能,8.6 数据库的实施和维护,58,8.6 数据库的实施和维护,59,60,1.数据库概念设计阶段通常采用 的设计方法。A.自底向上B.自顶向下C.回溯D.面向对象2.数据库物理设计的内容包括:。A设计外模式B选择存取路径C装载数据D调试应用程序3.数据库设计中,确定数据库存储结构,即确定关系、索引、聚簇等数据的存储安排和存储结构等工作属于。A.需求分析阶段 B.逻辑设计阶段 C.概念设计阶段 D.物理设计阶段,A,B,D,4.在关系数据库的逻辑设计阶段,首先应该设计。A视图B基表C索引D应用程序梗概5.数据库设计人员和用户之间沟通信息的桥梁是。A实体联系图B程序流程图C模块结构图D数据结构图6在关系数据库设计中,对关系进行规范化处理,使关系达到一定的范式,例如达到3NF,这是 阶段的任务。需求分析 B.逻辑设计 C.概念设计 D.物理设计,B,A,B,61,7.以下叙述中,属于结构冲突的是。A同一对象在同一分E-R图中具有不同的抽象 B同一对象在不同分E-R图中具有不同的抽象 C同一实体在不同分E-R图中所包含的属性个数和排列次序完全相同 D以上叙述均不属于结构冲突 8.学生社团可以接纳多名学生参加,但每个学生只能参加一个社团,从学生到社团之间参加联系的类型是。A多对多 B一对一 C多对一 D一对多,C,B,62,9.在数据库设计的需求分析阶段,通过调查要从用户处获得对数据库的。A信息需求和处理需求B输入需求和输出需求C存储需求和结构需求D信息需求和结构需求 10.反映现实世界中实体及实体间联系的信息模型是。A.关系模型 B.层次模型 C.网状模型 D.ER模型,D,A,63,64,填空:1.在数据库的设计过程中,视图在 阶段设计,索引在 阶段设计。2.在关系数据库设计中,外模式是在 设计阶段进行。3.在合并局部E-R图的过程中,要消除:属性冲突、命名冲突和 三类冲突。判断:1.概念模型中的一个多对多联系对应于关系模型中的一个 关系模式。2.数据库的概念设计独立于硬件和软件。3.消除结构冲突是数据库物理设计阶段的任务之一。,逻辑设计,物理设计,逻辑,结构冲突,某销售集团欲建立信息管理系统。该集团有若干公司,每个公司销售多种产品,且每一种产品可以由多个公司销售,每个公司按照预定的计划量销售产品;每种产品固定存放在一个仓库,每个仓库专门存放一种产品,产品存于仓库都有一个库存量;每个公司聘用多名职工,且每名职工只能在一个公司工作,公司聘用职工有聘期和工资。公司有公司编号、公司名、地址;产品有产品编号、产品名、规格;仓库有仓库编号、地点、容积;职工有职工号、姓名、性别、出生日期。若:已经在经销的产品不可以取消;一个公司倒闭后,其销售记录自动清除;每种产品的销售计划量不低于2000。请:(1).根据上述语义进行概念设计,用ER图描述该集团概念模式;(2).将ER图转换成关系模式,并指出每个关系模式的主、外键;(3).用DDL语句定义反映公司与产品间销售关系的基表。(需准确定义完整性约束),65,解:1.ER图表示的概念模式:,66,关系模式:公司(公司编号,公司名,地址)职工(职工编号,姓名,性别,出生日期,聘期,工资,公司编号)产品(产品编号,产品名,规格,库存量,仓库编号)仓库(仓库编号,地点,容积)销售(公司编号,产品编号,计划量),67,CREATE TABLE销售(公司编号 CHAR(10),产品编号 CHAR(8),计划量 INT,PRIMARY KEY(公司编号,产品编号),FOREIGN KEY(公司编号)REFERENCES 公司 ON DELETE CASCADE,FOREIGN KEY(产品编号)REFERENCES 产品 ON DELETE RESTRICT,CHECK(计划量=2000);,3.DDL语句定义反映公司与产品间销售关系的基表,68,作 业,百货公司管辖若干连锁商店,每家商店经营若干商品,每家商店有若干职工,每个职工只能服务于一家商店。该系统的信息需求包括:商店信息:商店编号、店名、地址、经理;商品信息:商品编号、商品名、单价、产地;职工信息:职工编号、职工名、性别、工资;职工参加某商店工作的开始时间;商店销售商品的月销售量。1为该百货公司设计ER模式;2将该E-R模型转换为关系模式,并指出每个关系模式 的主、外键;,69,

    注意事项

    本文(数据库与软件开发基础第八章.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开