数据库设计概念结构设计(上课课件).ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《数据库设计概念结构设计(上课课件).ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 设计 概念 结构设计 上课 课件
- 资源描述:
-
1、概念结构设计概述概念结构设计概述概念结构设计的方法与步骤概念结构设计的方法与步骤数据抽象与局部视图设计数据抽象与局部视图设计视图的集成视图的集成 什么是概念结构设计什么是概念结构设计需求分析阶段描述的用户应用需求是现需求分析阶段描述的用户应用需求是现实世界的具体需求实世界的具体需求将需求分析得到的用户需求抽象为信息将需求分析得到的用户需求抽象为信息结构即概念模型的过程就是概念结构设结构即概念模型的过程就是概念结构设计计概念结构是各种数据模型的共同基础,概念结构是各种数据模型的共同基础,它比数据模型更独立于机器、更抽象,它比数据模型更独立于机器、更抽象,从而更加稳定。从而更加稳定。概念结构设计是
2、整个数据库设计的关键概念结构设计是整个数据库设计的关键现实世界现实世界机器世界机器世界信息世界信息世界需求分析需求分析概念结构设计概念结构设计 概念结构设计的特点概念结构设计的特点(1)能真实、充分地反映现实世界,包)能真实、充分地反映现实世界,包括事物和事物之间的联系,能满足用户括事物和事物之间的联系,能满足用户对数据的处理要求。是对现实世界的一对数据的处理要求。是对现实世界的一个真实模型。个真实模型。(2)易于理解,从而可以用它和不熟悉)易于理解,从而可以用它和不熟悉计算机的用户交换意见,用户的积极参计算机的用户交换意见,用户的积极参与是数据库的设计成功的关键。与是数据库的设计成功的关键。
3、概念结构设计的特点概念结构设计的特点(续续)(3)易于更改,当应用环境和应用要求改变)易于更改,当应用环境和应用要求改变时,容易对概念模型修改和扩充。时,容易对概念模型修改和扩充。(4)易于向关系、网状、层次等各种数据模)易于向关系、网状、层次等各种数据模型转换。型转换。描述概念模型的工具描述概念模型的工具 E-R模型模型概念结构设计概述概念结构设计概述概念结构设计的方法与步骤概念结构设计的方法与步骤数据抽象与局部视图设计数据抽象与局部视图设计视图的集成视图的集成 设计概念结构的四类方法设计概念结构的四类方法自顶向下自顶向下 首先定义全局概念结构框架,然首先定义全局概念结构框架,然后逐步细化后
4、逐步细化自底向上自底向上 首先定义各局部应用概念结构,首先定义各局部应用概念结构,然后将它们集成起来,得到全局概然后将它们集成起来,得到全局概念结构念结构逐步扩张逐步扩张 首先定义最重要的核心概念结构,首先定义最重要的核心概念结构,然后向外扩充,以滚雪球的方式逐然后向外扩充,以滚雪球的方式逐步生成其他概念结构,直至总体概步生成其他概念结构,直至总体概念结构念结构混合策略混合策略 将自顶向下和自底向上相结合,将自顶向下和自底向上相结合,用自顶向下策略设计一个全局概念用自顶向下策略设计一个全局概念结构的框架,以它为骨架集成由自结构的框架,以它为骨架集成由自底向上策略中设计的各局部概念结底向上策略中
5、设计的各局部概念结构。构。自顶向下策略自顶向下策略自底向上策略自底向上策略 逐步扩张的设计方法核心需求需求核心概念结构其他概念结构全局概念结构 常用策略(萨师煊常用策略(萨师煊P215图图6.8)自顶向下地进行需求分析自顶向下地进行需求分析自底向上地设计概念结构自底向上地设计概念结构 自底向上设计概念结构的步骤自底向上设计概念结构的步骤 (萨师煊(萨师煊P216图图6.9)第第1步:抽象数据并设计局部视图步:抽象数据并设计局部视图第第2步:集成局部视图,得到全局概念结步:集成局部视图,得到全局概念结构构概念结构设计概述概念结构设计概述概念结构设计的方法与步骤概念结构设计的方法与步骤数据抽象与局
6、部视图设计数据抽象与局部视图设计视图的集成视图的集成 数据抽象数据抽象 局部视图设计局部视图设计 概念结构是对现实世界的一种抽象概念结构是对现实世界的一种抽象从实际的人、物、事和概念中抽取所关从实际的人、物、事和概念中抽取所关心的共同特性,忽略非本质的细节心的共同特性,忽略非本质的细节用各种概念精确地加以描述用各种概念精确地加以描述组成了某种模型组成了某种模型 三种常用抽象(三种常用抽象(1.分类分类Classification)定义某一类概念作为现实世界中一组对定义某一类概念作为现实世界中一组对象的类型象的类型这些对象具有某些共同的特性和行为这些对象具有某些共同的特性和行为它抽象了对象它抽象
7、了对象值和型值和型之间的之间的“is member of”的语义的语义在在E-R模型中,实体型就是这种抽象例:模型中,实体型就是这种抽象例:P216图图6.10 三种常用抽象(三种常用抽象(2.聚集聚集Aggregation)定义某一类型的组成成分定义某一类型的组成成分它抽象了对象内部类型和成分之间它抽象了对象内部类型和成分之间“is part of”的语义的语义在在E-R模型中若干属性的聚集组成了实体模型中若干属性的聚集组成了实体型,就是这种抽象型,就是这种抽象例:例:P217图图6.11,图,图6.12 三种常用抽象(三种常用抽象(3.概括概括Generalization)定义类型之间的一
8、种子集联系定义类型之间的一种子集联系它抽象了类型之间的它抽象了类型之间的“is subset of”的的语义语义概括有一个很重要的性质:继承性。子概括有一个很重要的性质:继承性。子类继承超类上定义的所有抽象。类继承超类上定义的所有抽象。例:萨师煊例:萨师煊P217图图6.13 注:原注:原E-R模型不具有概括,对模型不具有概括,对E-R模型作了扩充模型作了扩充后,允许定义超类实体型和子类实体型。后,允许定义超类实体型和子类实体型。用双竖边的矩形框表示子类,用双竖边的矩形框表示子类,用直线加小圆圈表示超类用直线加小圆圈表示超类-子类的联系子类的联系 数据抽象的用途数据抽象的用途对需求分析阶段收集
9、到的数据进行分类、对需求分析阶段收集到的数据进行分类、组织(聚集),形成组织(聚集),形成实体实体实体的属性,标识实体的码实体的属性,标识实体的码确定实体之间的联系类型确定实体之间的联系类型(1:1,1:n,m:n)设计分设计分E-R图的步骤图的步骤:选择局部应用选择局部应用逐一设计分逐一设计分E-R图图 需求分析阶段,已用多层数据流图和数据字典描需求分析阶段,已用多层数据流图和数据字典描述了整个系统。述了整个系统。设计分设计分E-R图首先需要根据系统的具体情况,在图首先需要根据系统的具体情况,在多层的数据流图中多层的数据流图中选择选择一个一个适当层次的数据流图适当层次的数据流图,让这组图中每
10、一部分对应一个局部应用,然后以让这组图中每一部分对应一个局部应用,然后以这一层次的数据流图为出发点,设计分这一层次的数据流图为出发点,设计分E-R图。图。通常以中层数据流图作为设计分通常以中层数据流图作为设计分E-R图图的依据。原因:的依据。原因:高层数据流图只能反映系统的概貌高层数据流图只能反映系统的概貌中层数据流图能较好地反映系统中各局中层数据流图能较好地反映系统中各局部应用的子系统组成部应用的子系统组成低层数据流图过细低层数据流图过细例:由于学籍管理、课程管理等都不太复杂,例:由于学籍管理、课程管理等都不太复杂,因此可以它们入手设计学生管理子系统的因此可以它们入手设计学生管理子系统的分分
11、E-R图。如果局部应用比较复杂,则可以图。如果局部应用比较复杂,则可以从更下层的数据流图入手。从更下层的数据流图入手。任务任务标定局部应用中的实体、属性、码,实体间标定局部应用中的实体、属性、码,实体间的联系的联系 将各局部应用涉及的数据分别从数据字典将各局部应用涉及的数据分别从数据字典中抽取出来,参照数据流图,标定各局部中抽取出来,参照数据流图,标定各局部应用中的实体、实体的属性、标识实体的应用中的实体、实体的属性、标识实体的码,确定实体之间的联系及其类型(码,确定实体之间的联系及其类型(1:11:1,1:n1:n,m:nm:n)如何抽象实体和属性如何抽象实体和属性实体实体:现实世界中一组具
12、有某些共同特:现实世界中一组具有某些共同特性和行为的对象就可以抽象为一个实体。性和行为的对象就可以抽象为一个实体。对象和实体之间是对象和实体之间是“is member of的关的关系。系。例:在学校环境中,可把张三、李四等对象抽象例:在学校环境中,可把张三、李四等对象抽象为学生实体。为学生实体。属性属性:对象类型的组成成分可以抽象为:对象类型的组成成分可以抽象为实体的属性。组成成分与对象类型之间实体的属性。组成成分与对象类型之间是是“is part of的关系。的关系。例:学号、姓名、专业、年级等可以抽象为学生例:学号、姓名、专业、年级等可以抽象为学生实体的属性。其中学号为标识学生实体的码。实
13、体的属性。其中学号为标识学生实体的码。如何区分实体和属性如何区分实体和属性实体与属性是相对而言的实体与属性是相对而言的。同一事物,。同一事物,在一种应用环境中作为在一种应用环境中作为“属性属性”,在另,在另一种应用环境中就必须作为一种应用环境中就必须作为“实体实体”。例:例:学校中的系,在某种应用环境中,它只是学校中的系,在某种应用环境中,它只是作为作为“学生学生”实体的一个属性,表明一个学生实体的一个属性,表明一个学生属于哪个系;而在另一种环境中,由于需要考属于哪个系;而在另一种环境中,由于需要考虑一个系的系主任、教师人数、学生人数、办虑一个系的系主任、教师人数、学生人数、办公地点等,这时它
14、就需要作为实体了公地点等,这时它就需要作为实体了。一般原则一般原则 属性不能再具有需要描述的性质。即属性必属性不能再具有需要描述的性质。即属性必须是不可分的数据项,不能再由另一些属性须是不可分的数据项,不能再由另一些属性组成。组成。属性不能与其他实体具有联系。联系只发生属性不能与其他实体具有联系。联系只发生在实体之间。在实体之间。符合上述两条特性的事物一般作为属性对待。符合上述两条特性的事物一般作为属性对待。为了简化为了简化E-R图的处置,现实世界中的事物凡图的处置,现实世界中的事物凡能够作为属性对待的,应尽量作为属性。能够作为属性对待的,应尽量作为属性。例例1:“学生学生”由学号、姓名等属性
15、进一由学号、姓名等属性进一步描述,根据准则,步描述,根据准则,“学生学生”只能作只能作为实体,不能作为属性。为实体,不能作为属性。例例2:职称通常作为教师实体的属性,但:职称通常作为教师实体的属性,但在涉及住房分配时,由于分房与职称有在涉及住房分配时,由于分房与职称有关,也就是说职称与住房实体之间有联关,也就是说职称与住房实体之间有联系,根据准则,这时把职称作为实体系,根据准则,这时把职称作为实体来处理会更合适些。(教程来处理会更合适些。(教程194图图6-10)设计分设计分E-R图的步骤图的步骤(1)以数据字典为出发点定义)以数据字典为出发点定义E-R图。图。数据字典中的数据字典中的“数据结
16、构数据结构”、“数据流数据流”和和“数据存储数据存储”等已是等已是若干属性的有意义的聚合若干属性的有意义的聚合(2)按上面给出的准则进行必要的调整。)按上面给出的准则进行必要的调整。例:学籍管理局部应用中主要涉及的实体包括学生、宿舍、例:学籍管理局部应用中主要涉及的实体包括学生、宿舍、档案材料、班级、班主任。档案材料、班级、班主任。实体之间的联系:实体之间的联系:由于一个宿舍可以住多个学生,而一个学生只由于一个宿舍可以住多个学生,而一个学生只能住在某一个宿舍中,因此宿舍与学生之间是能住在某一个宿舍中,因此宿舍与学生之间是1:n的联系。的联系。由于一个班级往往有若干名学生,而一个学生由于一个班级
17、往往有若干名学生,而一个学生只能属于一个班级,因此班级与学生之间也是只能属于一个班级,因此班级与学生之间也是1:n的联系的联系。由于班主任同时还要教课,因此班主任由于班主任同时还要教课,因此班主任与学生之间存在指导联系,一个班主任与学生之间存在指导联系,一个班主任要教多名学生,而一个学生只对应一个要教多名学生,而一个学生只对应一个班主任,因此班主任与学生之间也是班主任,因此班主任与学生之间也是1:n的联系。的联系。而学生和他自己的档案材料之间,班级而学生和他自己的档案材料之间,班级与班主任之间都是与班主任之间都是1:1的联系。的联系。学籍管理局部应用的分学籍管理局部应用的分E-R图草图:教程图
18、草图:教程195图图611 接下来需要进一步斟酌该接下来需要进一步斟酌该E-R图,做适当调整。图,做适当调整。(1)在一般情况下,性别通常作为学生实体的在一般情况下,性别通常作为学生实体的属性,但在本局部应用中,由于宿舍分配与学属性,但在本局部应用中,由于宿舍分配与学生性别有关,根据准则,应该把性别作为实生性别有关,根据准则,应该把性别作为实体对待。体对待。(2)数据存储数据存储“学生登记表学生登记表”,由于是手工填,由于是手工填写,供存档使用,其中有用的部分已转入学生写,供存档使用,其中有用的部分已转入学生档案材料中,因此这里就不必作为实体了。档案材料中,因此这里就不必作为实体了。最后得到学
19、籍管理局部应用的分最后得到学籍管理局部应用的分E-R图:教程图:教程195如图如图6-12。该该E-R图中省略了各个实体的属性描述:图中省略了各个实体的属性描述:学生:学生:学号学号,姓名,出生日期,姓名,出生日期性别:性别:性别性别档案材料:档案材料:档案号档案号,班级:班级:班级号班级号,学生人数,学生人数班主任:班主任:职工号职工号,姓名,性别,姓名,性别,是否为优秀班主任是否为优秀班主任 宿舍:宿舍:宿舍编号宿舍编号,地址,人数,地址,人数 其中有下划线的属性为实体的码。其中有下划线的属性为实体的码。同样方法可以得到课程管理局部应用的分同样方法可以得到课程管理局部应用的分E-R图,(萨
20、师煊图,(萨师煊图图6-13)各实体的属性分别为:各实体的属性分别为:学生:姓名,学生:姓名,学号学号,性别,年龄,所在系,性别,年龄,所在系,年级,平均成绩年级,平均成绩课程:课程:课程号课程号,课程名,学分,课程名,学分教师:教师:职工号职工号,姓名,性别,职称,姓名,性别,职称教科书:教科书:书号书号,书名,价钱,书名,价钱教室:教室:教室编号教室编号,地址,容量,地址,容量概念结构概念结构概念结构设计的方法与步骤概念结构设计的方法与步骤数据抽象与局部视图设计数据抽象与局部视图设计视图的集成视图的集成 各个局部视图即分各个局部视图即分E-R图建立好后,还需要图建立好后,还需要对它们进行合
21、并,集成为一个整体的数据对它们进行合并,集成为一个整体的数据概念结构即总概念结构即总E-R图。图。视图集成的两种方式视图集成的两种方式一次集成(萨师煊一次集成(萨师煊224图图6.25(a))一次集成多个分一次集成多个分E-R图图 通常用于局部视图比较简单时通常用于局部视图比较简单时逐步累积式(萨师煊逐步累积式(萨师煊P224图图6.25(b))首先集成两个局部视图(通常是比较首先集成两个局部视图(通常是比较关键的两个局部视图)关键的两个局部视图)以后每次将一个新的局部视图集成进以后每次将一个新的局部视图集成进来来 集成局部集成局部E-R图的步骤图的步骤1.合并合并2.修改与重构修改与重构 各
展开阅读全文