概念结构设计分析_第1页
概念结构设计分析_第2页
概念结构设计分析_第3页
概念结构设计分析_第4页
概念结构设计分析_第5页
已阅读5页,还剩127页未读 继续免费阅读

下载本文档

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

文档简介

1、1第三章第三章 概念结构设计概念结构设计2 章节内容章节内容 本章小结本章小结 课堂测试课堂测试 课后习题课后习题 课外读物课外读物33.0 引言引言3.1 数据模型数据模型3.2 概念结构设计概念结构设计4 数据模型的基本概念、组成要素、概念模型数据模型的基本概念、组成要素、概念模型的基本概念及的基本概念及ER方法。方法。 数据库设计概念结构设计阶段的设计目标、数据库设计概念结构设计阶段的设计目标、具体设计内容、设计描述、设计方法等。具体设计内容、设计描述、设计方法等。5 重点:重点: 牢固掌握概念模型的基本概念及其主要建模方法牢固掌握概念模型的基本概念及其主要建模方法ER方法;方法; 数据

2、库概念结构的设计是数据库设计过程中最重要的环数据库概念结构的设计是数据库设计过程中最重要的环节之一。牢固掌握用节之一。牢固掌握用E-R图来表示概念模型的方法,掌握图来表示概念模型的方法,掌握E-R图的设计,能够举一反三的程度。图的设计,能够举一反三的程度。6 难点:难点: E-R方法建模。方法建模。 技术上的难点是技术上的难点是E-R图的设计和数据模型的优化,包括对图的设计和数据模型的优化,包括对现实世界进行抽象的能力,提取实体、属性、实体型之现实世界进行抽象的能力,提取实体、属性、实体型之间的联系,正确划分实体与属性的能力。间的联系,正确划分实体与属性的能力。7 3.1.1 两大类数据模型两

3、大类数据模型 3.1.2 数据模型的组成要素数据模型的组成要素 3.1.3 概念模型概念模型8 数据模型分为两类(分属两个不同的层次)数据模型分为两类(分属两个不同的层次)(1) 概念模型概念模型 也称信息模型,它是按用户的观点来对数据和信息建模,也称信息模型,它是按用户的观点来对数据和信息建模,用于数据库设计。用于数据库设计。 (2) 逻辑模型和物理模型逻辑模型和物理模型 逻辑模型主要包括网状模型、层次模型、关系模型、面向对象模型等,逻辑模型主要包括网状模型、层次模型、关系模型、面向对象模型等,按计算机系统的观点对数据建模,用于按计算机系统的观点对数据建模,用于DBMS实现。实现。 物理模型

4、是对数据最底层的抽象,描述数据在系统内部的表示方式和存物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法。取方法,在磁盘或磁带上的存储方式和存取方法。9 客观对象的抽象过程客观对象的抽象过程-两步抽象两步抽象 现实世界中的客观对象抽象为概念模型;现实世界中的客观对象抽象为概念模型; 把概念模型转换为某一把概念模型转换为某一DBMS支持的数据模型。支持的数据模型。10现实世界中客观对象的抽象过程现实世界中客观对象的抽象过程现实世界现实世界 概念模型概念模型数据库设计人员完成数据库设计人员完成逻辑模型逻辑模型 物理模型物理模型由由DBMS完成完

5、成概念模型概念模型 逻辑模型逻辑模型数据库设计人员完成数据库设计人员完成 现实世界 认识 抽象 概念世界概念世界 概念数据模型概念数据模型 机器世界机器世界 DBMS 支持的数据模型支持的数据模型 转换 11 数据模型的三要素:数据模型的三要素: 数据结构数据结构 数据操作数据操作 数据的完整性约束规则数据的完整性约束规则12 什么是数据结构什么是数据结构 描述数据库的组成对象,以及对象之间的联系描述数据库的组成对象,以及对象之间的联系 描述的内容描述的内容 与数据类型、内容、性质有关的对象与数据类型、内容、性质有关的对象 与数据之间联系有关的对象与数据之间联系有关的对象 数据结构是数据结构是

6、对系统静态特性的描述对系统静态特性的描述13 数据操作数据操作 对数据库中各种对象对数据库中各种对象(型型)的实例的实例(值值)允许执行的允许执行的 操作操作及有关的及有关的操作规则操作规则 数据操作的类型数据操作的类型 查询查询 更新更新(包括插入、删除、修改包括插入、删除、修改)14 数据模型对操作的定义数据模型对操作的定义 操作的确切含义操作的确切含义 操作符号操作符号 操作规则(如优先级)操作规则(如优先级) 实现操作的语言实现操作的语言 数据操作是数据操作是对系统动态特性的描述对系统动态特性的描述15 数据的完整性约束条件数据的完整性约束条件 一组完整性规则的集合。一组完整性规则的集

7、合。 完整性规则:给定的数据模型中数据及其联系所完整性规则:给定的数据模型中数据及其联系所具有的制约和储存规则具有的制约和储存规则 用以限定符合数据模型的数据库状态以及状态的用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。变化,以保证数据的正确、有效、相容。16 数据模型对完整性约束条件的定义数据模型对完整性约束条件的定义 反映和规定本反映和规定本数据模型数据模型必须遵守的必须遵守的基本的通用的基本的通用的完整性完整性约束条件。例如在关系模型中,任何关系必须满足实体约束条件。例如在关系模型中,任何关系必须满足实体完整性和参照完整性两个条件。完整性和参照完整性两个条

8、件。 提供定义完整性约束条件的机制,以反映提供定义完整性约束条件的机制,以反映具体应用具体应用所涉所涉及的数据必须遵守的特定的语义约束条件及的数据必须遵守的特定的语义约束条件。17 信息世界中的基本概念信息世界中的基本概念 两个实体型之间的联系两个实体型之间的联系 两个以上实体型之间的联系两个以上实体型之间的联系 单个实体型内的联系单个实体型内的联系 概念模型的一种表示方法概念模型的一种表示方法 一个实例一个实例18 概念模型的用途概念模型的用途 概念模型用于信息世界的建模概念模型用于信息世界的建模 是现实世界到机器世界的一个中间层次是现实世界到机器世界的一个中间层次 是数据库设计的有力工具是

9、数据库设计的有力工具 数据库设计人员和用户之间进行交流的语言数据库设计人员和用户之间进行交流的语言 对概念模型的基本要求对概念模型的基本要求 较强的语义表达能力较强的语义表达能力 能够方便、直接地表达应用中的各种语义知识能够方便、直接地表达应用中的各种语义知识 简单、清晰、易于用户理解简单、清晰、易于用户理解19 (1) 实体(实体(Entity) 客观存在并可相互区别的事物称为实体。客观存在并可相互区别的事物称为实体。可以是具体的人、事、物或抽象的概念或联系。可以是具体的人、事、物或抽象的概念或联系。实体分实体分和和。(2) 属性(属性(Attribute) 实体所具有的某一特性称为属性。实

10、体所具有的某一特性称为属性。一个实体可以由若干个属性来刻画。一个实体可以由若干个属性来刻画。 (3) 码(码(Key) 唯一标识实体的属性集称为码。唯一标识实体的属性集称为码。20(4) 域(域(Domain) 一组具有相同数据类型的值的集合。一组具有相同数据类型的值的集合。属性的取值范围称为该属性的域。属性的取值范围称为该属性的域。 (5) 实体型(实体型(Entity Type) 用实体名及其属性名集合来抽象和刻画用实体名及其属性名集合来抽象和刻画同类实体用为实体型描述同类实体用为实体型描述(6) 实体集(实体集(Entity Set) 同型实体的集合称为实体集同型实体的集合称为实体集21

11、(7) 联系(联系(Relationship) 实体型间联系实体型间联系 两个实体型两个实体型 一对一联系(一对一联系(1:1) 多个实体型多个实体型 一对多联系(一对多联系(1:n) 一个实体型一个实体型 多对多联系(多对多联系(m:n) 22实体型实体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mnm:n联系联系实体型实体型B用图形来表示两个实体型之间的这三类联系用图形来表示两个实体型之间的这三类联系 23 一对一联系(一对一联系(1:1) 实例实例一个班级只有一个正班长一个班级只有一个正班长一个班长只

12、在一个班中任职一个班长只在一个班中任职 定义:定义: 如果对于实体集如果对于实体集A中的每一个实体,实中的每一个实体,实体集体集B中至多有一个(也可以没有)实体中至多有一个(也可以没有)实体与之联系,反之亦然,与之联系,反之亦然,则称实体集则称实体集A与实与实体集体集B具有一对一联系,具有一对一联系,记为记为1:1 班级班级班级班级-班长班长班长班长111:1联系联系24 一对多联系(一对多联系(1:n) 实例实例一个班级中有若干名学生,一个班级中有若干名学生,每个学生只在一个班级中学习每个学生只在一个班级中学习 定义:定义:如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一个实体,

13、实体集B中中有有n个实体(个实体(n0)与之联系,反之,对于实体)与之联系,反之,对于实体集集B中的每一个实体,实体集中的每一个实体,实体集A中至多只有一个中至多只有一个实体与之联系,则称实体与之联系,则称实体集实体集A与实体集与实体集B有一对有一对多联系,记为多联系,记为1:n班级班级组成组成学生学生1n1:n联系联系25 多对多联系(多对多联系(m:n) 实例实例课程与学生之间的联系:课程与学生之间的联系:一门课程同时有若干个学生选修一门课程同时有若干个学生选修一个学生可以同时选修多门课程一个学生可以同时选修多门课程 定义:定义:如果对于实体集如果对于实体集A中的每一个实体,实体集中的每一

14、个实体,实体集B中中有有n个实体(个实体(n0)与之联系,反之,对于实)与之联系,反之,对于实体集体集B中的每一个实体,实体集中的每一个实体,实体集A中也有中也有m个实个实体(体(m0)与之联系,则称实体集)与之联系,则称实体集A与实体与实体B具有多对多联系,记为具有多对多联系,记为m:n课程课程选修选修学生学生mnm:n联系联系26 两个以上实体型之间一对多联系两个以上实体型之间一对多联系 若实体集若实体集E1,E2,.,En存在联系,对于实体集存在联系,对于实体集Ej(j=1,2,.,i-1,i+1,.,n)中的给定实体,最)中的给定实体,最多只和多只和Ei中的一个实体相联系,则我们说中的

15、一个实体相联系,则我们说Ei与与E1,E2,.,Ei-1,Ei+1,.,En之间的联系是一对多的之间的联系是一对多的27 实例实例 课程、教师与参考书三个实体型课程、教师与参考书三个实体型一门课程可以有若干个教师讲授,一门课程可以有若干个教师讲授,使用若干本参考书,使用若干本参考书,每一个教师只讲授一门课程,每一个教师只讲授一门课程,每一本参考书只供一门课程使用每一本参考书只供一门课程使用课程课程讲授讲授教师教师1m两个以上实体型间两个以上实体型间1:n联系联系参考书参考书n28 多个实体型间的一对一联系多个实体型间的一对一联系 两个以上实体型间的多对多联系两个以上实体型间的多对多联系 实例实

16、例 供应商、项目、零件三个实体型供应商、项目、零件三个实体型一个供应商可以供给多个项目多种零件一个供应商可以供给多个项目多种零件每个项目可以使用多个供应商供应的零件每个项目可以使用多个供应商供应的零件每种零件可由不同供应商供给每种零件可由不同供应商供给供应商供应商供应供应项目项目mp两个以上实体型间两个以上实体型间m:n联系联系零件零件n29一对多联系一对多联系 实例实例 职工实体型内部具有领导与被领导的联系职工实体型内部具有领导与被领导的联系某一职工(干部)某一职工(干部)“领导领导”若干名职工若干名职工一个职工仅被另外一个职工直接领导一个职工仅被另外一个职工直接领导这是一对多的联系这是一对

17、多的联系 一对一联系一对一联系 请举例请举例职工职工领导领导1n单个实体型内部单个实体型内部1:n联系联系30实体型实体型1联系名联系名mn单个实体型内的单个实体型内的m:n联系联系v多对多联系请举例31 实体联系方法实体联系方法(E-R方法方法) 用用E-R图来描述现实世界的概念模型图来描述现实世界的概念模型 E-R方法也称为方法也称为E-R模型模型32 实体型实体型用矩形表示,矩形框内写明实体名。用矩形表示,矩形框内写明实体名。 属性属性用椭圆形表示,并用无向边将其与相应的实体连接起来用椭圆形表示,并用无向边将其与相应的实体连接起来学生学生教师教师学生学生学号学号年龄年龄性别性别姓名姓名3

18、3 联系联系 联系本身联系本身: 用菱形表示,菱形框内写明联系名,并用无向边分别用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类与有关实体连接起来,同时在无向边旁标上联系的类型(型(1:1、1:n或或m:n) 34课程课程选修选修学生学生mn成绩成绩v联系的属性联系的属性:联系本身也是一种实体型,也联系本身也是一种实体型,也 可以有属性。如果一个联系具可以有属性。如果一个联系具有属性,则这些属性也要用无有属性,则这些属性也要用无向边与该联系连接起来向边与该联系连接起来 35实体型实体型A联系名联系名实体型实体型B111:1联系联系实体型实体型A联系名

19、联系名1n1:n联系联系实体型实体型A实体型实体型B联系名联系名mnm:n联系联系实体型实体型B36 连线上的数字有两种表示方法:连线上的数字有两种表示方法:表示方法表示方法1:用一对数,表示实体角色的最大参与:用一对数,表示实体角色的最大参与度,如图中的度,如图中的a)和和c)所示。所示。表示方法表示方法2:用两对数,表示实体角色的最小和最:用两对数,表示实体角色的最小和最大参与度,大参与度,2-6中的中的b)和和d)所示。所示。37班级班级班级班级-班长班长班长班长111:1联系联系课程课程选修选修学生学生mnm:n联系联系班级班级组成组成学生学生1n1:n联系联系38 1.实体集之间的联

20、系示例如图。实体集之间的联系示例如图。2.实体集内实体之间的联系示例如图。实体集内实体之间的联系示例如图。3.多重联系和多元联系的示例如图。多重联系和多元联系的示例如图。4.实体属性和联系属性示例如图。实体属性和联系属性示例如图。5.E-R模型示例如图。模型示例如图。39用用E-R图表示某个工厂物资管理的概念模型图表示某个工厂物资管理的概念模型 实体实体 仓库:仓库: 仓库号、面积、电话号码仓库号、面积、电话号码 零件零件 :零件号、名称、规格、单价、描述:零件号、名称、规格、单价、描述 供应商:供应商号、姓名、地址、电话号码、帐号供应商:供应商号、姓名、地址、电话号码、帐号 项目:项目号、预

21、算、开工日期项目:项目号、预算、开工日期 职工:职工号、姓名、年龄、职称职工:职工号、姓名、年龄、职称 40 实体之间的联系如下:实体之间的联系如下: (1)一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。仓库一个仓库可以存放多种零件,一种零件可以存放在多个仓库中。仓库和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的和零件具有多对多的联系。用库存量来表示某种零件在某个仓库中的数量。数量。(2)一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,仓一个仓库有多个职工当仓库保管员,一个职工只能在一个仓库工作,仓库和职工之间是一对多的联系。职工实体型中具有一对多的联系库和

22、职工之间是一对多的联系。职工实体型中具有一对多的联系 (3)职工之间具有领导职工之间具有领导-被领导关系。即仓库主任领导若干保管员。被领导关系。即仓库主任领导若干保管员。(4)供应商、项目和零件三者之间具有多对多的联系供应商、项目和零件三者之间具有多对多的联系41423.2.1 概念结构概念结构3.2.2 概念结构设计的方法与步骤概念结构设计的方法与步骤3.2.3 数据抽象与局部视图设计数据抽象与局部视图设计3.2.4 视图的集成视图的集成43 什么是概念结构设计什么是概念结构设计 将需求分析得到的用户需求抽象为信息结构即概将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设计

23、念模型的过程就是概念结构设计 概念结构是各种数据模型的共同基础,它比数据概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,从而更加稳定模型更独立于机器、更抽象,从而更加稳定 概念结构设计是整个数据库设计的关键概念结构设计是整个数据库设计的关键44现实世界现实世界机器世界机器世界信息世界信息世界需求分析需求分析概念结构设计概念结构设计45 概念结构设计的特点概念结构设计的特点 (1) 能真实、充分地反映现实世界能真实、充分地反映现实世界 (2) 易于理解易于理解 (3) 易于更改易于更改 (4) 易于向关系、网状、层次等各种数据模型转换易于向关系、网状、层次等各种数据模型转换4

24、6 描述概念模型的工具描述概念模型的工具 E-R模型模型47 设计概念结构的四类方法设计概念结构的四类方法 自顶向下自顶向下 首先定义全局概念结构的框架,然后逐步细化首先定义全局概念结构的框架,然后逐步细化自顶向下策略48 自底向上自底向上 首先定义各局部应用的概念结构,然后将它们集成起来,得首先定义各局部应用的概念结构,然后将它们集成起来,得到全局概念结构到全局概念结构自底向上策略49 逐步扩张逐步扩张 首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概念结构方式逐步生成其他概念结构,直至总体概念结

25、构逐步扩张策略50 混合策略混合策略 将自顶向下和自底向上相结合,用自顶向下策略设计一个全局将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局概念结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结构。部概念结构。51 常用策略常用策略 自顶向下地进行需求分析自顶向下地进行需求分析 自底向上地设计概念结构自底向上地设计概念结构52v自底向上设计概念结构的步骤 第1步:抽象数据并设计局部视图第2步:集成局部视图,得到全局概念结构53 数据抽象数据抽象 局部视图设计局部视图设计54 抽象是对实际的人、物、事和概念中抽取所关心的抽象

26、是对实际的人、物、事和概念中抽取所关心的共同特性,忽略非本质的细节,并把这些特性用各共同特性,忽略非本质的细节,并把这些特性用各种概念精确地加以描述。种概念精确地加以描述。 概念结构是对现实世界的一种抽象概念结构是对现实世界的一种抽象55 三种常用抽象三种常用抽象1. 分类(分类(Classification) 定义某一类概念作为现实世界中一组对象的类型定义某一类概念作为现实世界中一组对象的类型 抽象了对象抽象了对象值和型值和型之间的之间的“is member of”的语义的语义56572. 聚集(聚集(Aggregation) 定义某一类型的组成成分定义某一类型的组成成分 抽象了对象内部类型

27、和成分之间抽象了对象内部类型和成分之间“is part of”的语义的语义58 聚集 59 复杂的聚集,某一类型的成分仍是一个聚集 更复杂的聚集 603. 概括(概括(Generalization) 定义类型之间的一种子集联系定义类型之间的一种子集联系 抽象了类型之间的抽象了类型之间的“is subset of”的语义的语义 继承性继承性 61概括 62设计分设计分E-R图的步骤图的步骤:选择局部应用选择局部应用逐一设计分逐一设计分E-R图图63 在多层的数据流图中选择一个适当层次的数据流图,在多层的数据流图中选择一个适当层次的数据流图,作为设计分作为设计分E-R图的出发点图的出发点 通常以通

28、常以中层数据流图中层数据流图作为设计分作为设计分E-R图的依据图的依据64设计分E-R图的出发点 65 任务任务 将各局部应用涉及的数据分别从数据字典中抽取出来将各局部应用涉及的数据分别从数据字典中抽取出来 参照数据流图,标定各局部应用中的实体、实体的属参照数据流图,标定各局部应用中的实体、实体的属性、标识实体的码性、标识实体的码 确定实体之间的联系及其类型(确定实体之间的联系及其类型(1:1,1:n,m:n)66 两条准则:两条准则:(1)属性不能再具有需要描述的性质。即属性必须是)属性不能再具有需要描述的性质。即属性必须是不可分的数据项,不能再由另一些属性组成不可分的数据项,不能再由另一些

29、属性组成(2)属性不能与其他实体具有联系。联系只发生在实)属性不能与其他实体具有联系。联系只发生在实体之间体之间67职称作为一个实体68病房作为一个实体69仓库作为一个实体70实例销售管理子系统分E-R图的设计v销售管理子系统的主要功能:销售管理子系统的主要功能:n处理顾客和销售员送来的订单处理顾客和销售员送来的订单n工厂是根据订货安排生产的工厂是根据订货安排生产的n交出货物同时开出发票交出货物同时开出发票n收到顾客付款后,根据发票存根和信贷情况进行应收款处理收到顾客付款后,根据发票存根和信贷情况进行应收款处理71下图是第一层数据流图,虚线部分划出了系统边界下图是第一层数据流图,虚线部分划出了

30、系统边界 图7.18 销售管理子系统第一层数据流图 72上图中把系统功能又分为上图中把系统功能又分为4个子系统,下面四个图是第二层数据流图个子系统,下面四个图是第二层数据流图 图7.19 接收订单 73图7.20 处理订单 74图7.21 开发票 75图7.22 支付过账 76分E-R图的框架 77 参照第二层数据流图和数据字典,遵循两个准则,进行如参照第二层数据流图和数据字典,遵循两个准则,进行如下调整:下调整: (1) 订单与订单细节是订单与订单细节是1 n的联系的联系 (2) 原订单和产品的联系实际上是订单细节和产品的联系。原订单和产品的联系实际上是订单细节和产品的联系。 (3) 图图7

31、.21中中“发票主清单发票主清单”是一个数据存储,不必作为实体是一个数据存储,不必作为实体加入分加入分E-R图图 (4) 工厂对大宗订货给予优惠工厂对大宗订货给予优惠78 得到分得到分E-R图如下图所示图如下图所示 销售管理子系统的分E-R图 79对每个实体定义的属性如下:对每个实体定义的属性如下: 顾客:顾客:顾客号顾客号,顾客名,地址,电话,信贷状况,账目余额,顾客名,地址,电话,信贷状况,账目余额 订单:订单:订单号订单号,顾客号,订货项数,订货日期,交货日期,工种号,顾客号,订货项数,订货日期,交货日期,工种号,生产地点生产地点 订单细则:订单细则:订单号,细则号订单号,细则号,零件号

32、,订货数,金额,零件号,订货数,金额 应收账款:应收账款:顾客号,订单号顾客号,订单号,发票号,应收金额,支付日期,支付,发票号,应收金额,支付日期,支付金额,金额, 当前余额,货款限额当前余额,货款限额 产品描述:产品描述:产品号,产品名,单价,重量产品号,产品名,单价,重量 折扣规则:折扣规则:产品号,订货量产品号,订货量,折扣,折扣80 各个局部视图即分各个局部视图即分E-R图建立好后,还需要对它们图建立好后,还需要对它们进行合并,集成为一个整体的数据概念结构即总进行合并,集成为一个整体的数据概念结构即总E-R图。图。81 多个分多个分E-R图一次集成图一次集成 一次集成多个分一次集成多

33、个分E-R图图 通常用于局部视图比较简单时通常用于局部视图比较简单时82 逐步集成逐步集成 用累加的方式一次集成两个分用累加的方式一次集成两个分E-R图图 83集成局部集成局部E-R图的步骤图的步骤1. 合并合并2. 修改与重构修改与重构84视图集成 85 各分各分E-R图存在冲突图存在冲突 各个分各个分E-R图之间必定会存在许多不一致的地方图之间必定会存在许多不一致的地方 合并分合并分E-R图的主要工作与关键图的主要工作与关键 合理消除各分合理消除各分E-R图的冲突图的冲突86 冲突的种类冲突的种类 属性冲突属性冲突 命名冲突命名冲突 结构冲突结构冲突87 两类属性冲突两类属性冲突 属性域冲

34、突属性域冲突属性值的类型属性值的类型取值范围取值范围 取值集合不同取值集合不同 属性取值单位冲突属性取值单位冲突88 两类命名冲突两类命名冲突 同名异义同名异义:不同意义的对象在不同的局部应用中具有:不同意义的对象在不同的局部应用中具有相同的名字相同的名字 异名同义(一义多名)异名同义(一义多名):同一意义的对象在不同的局:同一意义的对象在不同的局部应用中具有不同的名字部应用中具有不同的名字89 三类结构冲突三类结构冲突 同一对象在不同应用中具有不同的抽象同一对象在不同应用中具有不同的抽象 同一实体在不同分同一实体在不同分E-R图中所包含的属性个数和属性排列图中所包含的属性个数和属性排列次序不

35、完全相同次序不完全相同 实体之间的联系在不同局部视图中呈现不同的类型实体之间的联系在不同局部视图中呈现不同的类型90 基本任务基本任务 消除不必要的冗余,设计生成基本消除不必要的冗余,设计生成基本E-R图图合并合并初步初步E-R图图分分E-R图图可能存在冗余的数据可能存在冗余的数据和冗余的实体间联系和冗余的实体间联系基本基本E-R图图消除不必要的冗余消除不必要的冗余91 冗余冗余 消除冗余的方法消除冗余的方法92 冗余的数据是指可由基本数据导出的数据冗余的数据是指可由基本数据导出的数据冗余的联系是指可由其他联系导出的联系冗余的联系是指可由其他联系导出的联系 冗余数据和冗余联系容易破坏数据库的完

36、整性,给数据库维冗余数据和冗余联系容易破坏数据库的完整性,给数据库维护增加困难护增加困难 消除不必要的冗余后的初步消除不必要的冗余后的初步E-R图称为基本图称为基本E-R图图 93 分析方法分析方法 以数据字典和数据流图为依据以数据字典和数据流图为依据 根据数据字典中关于数据项之间的逻辑关系根据数据字典中关于数据项之间的逻辑关系94消除冗余 95 效率效率VS冗余信息冗余信息 需要根据用户的整体需求来确定需要根据用户的整体需求来确定 若人为地保留了一些冗余数据,则应把数据字典中数据若人为地保留了一些冗余数据,则应把数据字典中数据关联的说明作为完整性约束条件关联的说明作为完整性约束条件 Q4=Q

37、5 一旦一旦Q5修改后就应当触发完整性检查,对修改后就应当触发完整性检查,对Q4进行修改进行修改96 规范化理论规范化理论 函数依赖的概念提供了消除冗余联系的形式化工具函数依赖的概念提供了消除冗余联系的形式化工具97 方法方法1. 确定分确定分E-R图实体之间的数据依赖图实体之间的数据依赖 ,并用实体码之间的函数,并用实体码之间的函数依赖表示。依赖表示。劳动人事管理的分E-R图 98上图中,上图中, 部门和职工之间一对多的联系可表示为:部门和职工之间一对多的联系可表示为: 职工号职工号部门号部门号 职工和产品之间多对多的联系可表示为:职工和产品之间多对多的联系可表示为: (职工号,产品号)(职

38、工号,产品号)工作天数工作天数 得到函数依赖集得到函数依赖集FL 992. 求求FL的最小覆盖的最小覆盖GL ,差集为,差集为D = FL-GL。 逐一考察逐一考察D中的函数依赖,确定是否是冗余的联系,若是,中的函数依赖,确定是否是冗余的联系,若是,就把它去掉。就把它去掉。 (1) 冗余的联系一定在冗余的联系一定在D中,而中,而D中的联系不一定是冗余的;中的联系不一定是冗余的; (2) 当实体之间存在多种联系时要将实体之间的联系在形式上当实体之间存在多种联系时要将实体之间的联系在形式上加以区分。加以区分。100 实例实例 某工厂管理信息系统的视图集成。某工厂管理信息系统的视图集成。 书中图书中

39、图1.14(c)、图、图7.24、图、图7.29分别为该厂物资、销售分别为该厂物资、销售 和劳动人事管理的分和劳动人事管理的分E-R图图 图图7.30为该系统的基本为该系统的基本E-R图图101图1.14(c) 工厂物资管理E-R图该厂物资管理分E-R图102图7.24 销售管理子系统的分E-R图该厂销售管理分E-R图103图7.29 劳动人事管理的分E-R图该厂劳动人事管理分E-R图104系统的基本E-R(图7.30)某工厂管理信息系统的基本E-R图 105集成过程,解决了以下问题:集成过程,解决了以下问题: 异名同义,项目和产品含义相同异名同义,项目和产品含义相同库存管理中职工与仓库的工作

40、关系已包含在劳动人事管理的部门库存管理中职工与仓库的工作关系已包含在劳动人事管理的部门与职工之间的联系之中,所以可以取消与职工之间的联系之中,所以可以取消职工之间领导与被领导关系可由部门与职工(经理)之间的领导职工之间领导与被领导关系可由部门与职工(经理)之间的领导关系、部门与职工之间的从属关系两者导出,所以也可以取消关系、部门与职工之间的从属关系两者导出,所以也可以取消106 视图集成后形成一个整体的数据库概念结构,对该整体概视图集成后形成一个整体的数据库概念结构,对该整体概念结构还必须进行进一步验证,确保它能够满足下列条件念结构还必须进行进一步验证,确保它能够满足下列条件: 整体概念结构内

41、部必须具有一致性,不存在互相矛盾的表达整体概念结构内部必须具有一致性,不存在互相矛盾的表达 整体概念结构能准确地反映原来的每个视图结构,包括属性、整体概念结构能准确地反映原来的每个视图结构,包括属性、实体及实体间的联系实体及实体间的联系 整体概念结构能满足需要分析阶段所确定的所有要求整体概念结构能满足需要分析阶段所确定的所有要求107 整体概念结构最终还应该提交给用户,征求用户和有关人员整体概念结构最终还应该提交给用户,征求用户和有关人员的意见,进行评审、修改和优化,然后把它确定下来,作为的意见,进行评审、修改和优化,然后把它确定下来,作为数据库的概念结构,作为进一步设计数据库的依据。数据库的

42、概念结构,作为进一步设计数据库的依据。108 概念结构设计的步骤概念结构设计的步骤 抽象数据并设计局部视图抽象数据并设计局部视图 集成局部视图,得到全局概念结构集成局部视图,得到全局概念结构 验证整体概念结构验证整体概念结构109 数据抽象数据抽象 分类分类 聚集聚集 概括概括110 设计局部视图设计局部视图 选择局部应用选择局部应用 2. 逐一设计分逐一设计分E-R图图 标定局部应用中的实体、属性、码,实体间的联系标定局部应用中的实体、属性、码,实体间的联系 用用E-R图描述出来图描述出来111 集成局部视图集成局部视图 1.合并分合并分E-R图,生成初步图,生成初步E-R图图消除冲突消除冲

43、突 属性冲突属性冲突 命名冲突命名冲突 结构冲突结构冲突 2. 修改与重构修改与重构消除不必要的冗余,设计生成基本消除不必要的冗余,设计生成基本E-R图图 分析方法分析方法 规范化理论规范化理论112 数据模型数据模型 数据模型的三要素数据模型的三要素 概念模型,概念模型, E-R 模型模型 概念结构设计的步骤概念结构设计的步骤 抽象数据并设计局部视图抽象数据并设计局部视图 集成局部视图,得到全局概念结构集成局部视图,得到全局概念结构 验证整体概念结构验证整体概念结构113一、选择题一、选择题1.概念结构设计是整个数据库设计的关键,它通概念结构设计是整个数据库设计的关键,它通过对用户需求进行综

44、合、归纳与抽象,形成一个过对用户需求进行综合、归纳与抽象,形成一个独立于具体独立于具体DBMS的(的( )。)。 A. 数据模型数据模型 B.概念模型概念模型 C.层次模型层次模型 D.关系模型关系模型 114 2.概念模型是现实世界的第一层抽象,这一类最著概念模型是现实世界的第一层抽象,这一类最著名的模型是(名的模型是( ) 。 A.层次模型层次模型 B.关系模型关系模型 C.网状模型网状模型 D.实体实体-关系模型关系模型115 3.在概念模型中的客观存在并可相互区别的事物称在概念模型中的客观存在并可相互区别的事物称( ) 。 A.实体实体 B.元组元组 C.属性属性 D.节点节点 116

45、 4.区分不同实体的依据是(区分不同实体的依据是( ) 。 A.名称名称 B.属性属性 C.对象对象 D.概念概念 117 5.公司有多个部门和多名职员,每个职员只能属于公司有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部一个部门,一个部门可以有多名职员,从职员到部门的联系类形是(门的联系类形是( ) 。 A.多对多多对多 B.一对一一对一 C.一对多一对多118 6.数据库设计的概念设计阶段,表示概念结构的常数据库设计的概念设计阶段,表示概念结构的常用方法和描述工具是(用方法和描述工具是( )。)。 A. 层次分析法和层次结构图层次分析法和层次结构图 B.

46、数据流程分析法和数据流程图数据流程分析法和数据流程图 C. 实体联系方法实体联系方法 D.结构分析法和模块结构图结构分析法和模块结构图 119 13.关系数据模型是目前最重要的一种数据模型,关系数据模型是目前最重要的一种数据模型,它的三个要素分别是(它的三个要素分别是( )。)。 A.实体完整性、参照完整性、用户自定义完整性实体完整性、参照完整性、用户自定义完整性B.数据结构、关系操作、完整性约束数据结构、关系操作、完整性约束 C.数据增加、数据修改、数据查询数据增加、数据修改、数据查询 D.外模式、模式、内模式外模式、模式、内模式 120二、填空二、填空 1.根据模型应用的不同目的,可以将这

47、些模型划分根据模型应用的不同目的,可以将这些模型划分为两类,它们分别属于两个不同的层次。第一类是为两类,它们分别属于两个不同的层次。第一类是_,第二类是,第二类是_。 2 . 用用_ 方法来设计数据库的概念模型是数方法来设计数据库的概念模型是数据库概念设计阶段广泛采用的方法。据库概念设计阶段广泛采用的方法。 121 3. 概念模型有以下特点:概念模型有以下特点:_、 _ 、_ 、_。 4. 客观存在并可相互区别的事物称为客观存在并可相互区别的事物称为_ ,它可以是具体的人、事、物,也可以是抽象的概念它可以是具体的人、事、物,也可以是抽象的概念或联系。或联系。122 5 . 唯一标识实体的属性集

48、称为唯一标识实体的属性集称为_ 。 6 . 实体之间的联系有实体之间的联系有_ 、_ 、_三种。三种。123 7 . 各分各分E-R图之间的冲突主要有三类:图之间的冲突主要有三类:_ 、_和和_ 。 8. E-R模型是对现实世界的一种抽象,它的主要成模型是对现实世界的一种抽象,它的主要成分是分是_ 、联系和、联系和 _。1249.数据模型的三要素是指数据模型的三要素是指_,_,_。10.用有向图结构表示实体类型及实体间联系的数据用有向图结构表示实体类型及实体间联系的数据模型称为模型称为_模型,数据之间的联系通常模型,数据之间的联系通常通过通过_实现。实现。125三、问答题三、问答题1.什么是数据模型?它

温馨提示

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

评论

0/150

提交评论