《第九章空间数据库设计精选PPT.ppt》由会员分享,可在线阅读,更多相关《第九章空间数据库设计精选PPT.ppt(65页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第九章空间数据库设计第九章空间数据库设计第1页,本讲稿共65页9.9.空间数据库设计空间数据库设计q9.1 空间数据库设计概述空间数据库设计概述q9.2 需求分析需求分析q9.3 概念结构设计概念结构设计q9.4 逻辑结构设计逻辑结构设计q9.5 空间数据库物理设计空间数据库物理设计q9.6 空间数据库的实施和维护空间数据库的实施和维护q9.7 空间数据库建库空间数据库建库第2页,本讲稿共65页9.1 9.1 空间数据库设计概述空间数据库设计概述q9.1.1 9.1.1 空间数据库设计原则空间数据库设计原则q9.1.2 9.1.2 空间数据库设计过程空间数据库设计过程第3页,本讲稿共65页9.
2、1.1 9.1.1 空间数据库设计原则空间数据库设计原则q1 1)空间数据库设计与应用系统设计相结合的原则)空间数据库设计与应用系统设计相结合的原则q2 2)数据独立性原则)数据独立性原则q3 3)共享度高、冗余度低原则)共享度高、冗余度低原则q4 4)用户与系统的接口简单性原则)用户与系统的接口简单性原则q5 5)系统可靠性、安全性与完整性原则)系统可靠性、安全性与完整性原则q6 6)系统具有重新组织、可修改与可扩充性原则)系统具有重新组织、可修改与可扩充性原则第4页,本讲稿共65页9.1.2 9.1.2 空间空间数据库设计数据库设计过程过程第5页,本讲稿共65页9.2 9.2 需求分析需求
3、分析q9.2.1 9.2.1 需求分析的任务与方法需求分析的任务与方法q9.2.2 9.2.2 数据流图与数据字典数据流图与数据字典第6页,本讲稿共65页9.2.1 9.2.1 需求分需求分析的任务与方析的任务与方法法第7页,本讲稿共65页9.2.2 9.2.2 数据流图与数据字典数据流图与数据字典q1 1数据流图的基本成分数据流图的基本成分第8页,本讲稿共65页2数据流图分层数据流图分层第9页,本讲稿共65页q3 3数据字典数据字典1 1)数据项)数据项数据项的描述通常包括以下内容数据项的描述通常包括以下内容:数据项名,数据项含数据项名,数据项含义说明,别名,数据类型,长度,取值范围,取值含
4、义,义说明,别名,数据类型,长度,取值范围,取值含义,与其他数据项的逻辑关系,数据项之间的联系与其他数据项的逻辑关系,数据项之间的联系“取值范取值范围围”,“与其他数据项的逻辑关系与其他数据项的逻辑关系”。2 2)数据结构)数据结构数据结构反映了数据之间的组合关系。一个数据结构可以由若数据结构反映了数据之间的组合关系。一个数据结构可以由若干个数据项组成,也可以由若干个数据结构组成,或由若干个干个数据项组成,也可以由若干个数据结构组成,或由若干个数据项和数据结构混合组成。对数据结构的描述通常包括以下数据项和数据结构混合组成。对数据结构的描述通常包括以下内容:数据结构名,含义说明,组成:数据项或数
5、据结构。内容:数据结构名,含义说明,组成:数据项或数据结构。第10页,本讲稿共65页3 3)数据流)数据流是数据结构在系统内传播的路径。对数据流的描述通常包括以下内容:数据流名,是数据结构在系统内传播的路径。对数据流的描述通常包括以下内容:数据流名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量。说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量。4 4)数据存储)数据存储数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。它可以是手工文档或手工凭单,也可以是计算机文档。对数据存储的
6、描它可以是手工文档或手工凭单,也可以是计算机文档。对数据存储的描述通常包括以下内容述通常包括以下内容:数据存储名,说明,编号,输入的数据流,输出的数据存储名,说明,编号,输入的数据流,输出的数据流数据结构,数据量,存取频度,存取方式。数据流数据结构,数据量,存取频度,存取方式。5 5)处理过程)处理过程处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息,通常包括以下内容:处理过程名,说明,输入:描述处理过程的说明性信息,通常包括以下内容:处理过程名,说明,输入:数据流,输出:数据流,处理:
7、简要说明。数据流,输出:数据流,处理:简要说明。第11页,本讲稿共65页9.3 9.3 概念结构设计概念结构设计q9.3.1 9.3.1 利用利用E-RE-R模型设计模型设计q9.3.2 9.3.2 利用利用UMLUML模型设计模型设计第12页,本讲稿共65页9.3.1 9.3.1 利用利用E-RE-R模型设计模型设计qERER模型是最为流行的建模工具之一。模型是最为流行的建模工具之一。q实体和属性实体和属性实体是物理上或者概念上独立存在的事物或对象。实体是物理上或者概念上独立存在的事物或对象。实体由属性来刻画性质,属性可以是单值或多值的。实体由属性来刻画性质,属性可以是单值或多值的。q联系联
8、系一对一(一对一(1111)u在一对一的联系中,一个实体中每个实例只能与其在一对一的联系中,一个实体中每个实例只能与其他参与实体的一个实例相联系。他参与实体的一个实例相联系。u例如,实体例如,实体MANAGERMANAGER和和FORESTFOREST之间的联系之间的联系managesmanages就就是一个一对一的联系。是一个一对一的联系。第13页,本讲稿共65页多对一(多对一(M1M1)u多对一联系可将一个实体的多个实例与另一个参与该联系的实多对一联系可将一个实体的多个实例与另一个参与该联系的实体的一个实例相连接。体的一个实例相连接。uBelongs_toBelongs_to是实体是实体F
9、ACILITYFACILITY与与FORESTFOREST之间的一个多对一联系,这里假之间的一个多对一联系,这里假定每个设施仅仅属于一个森林,但每个森林可以有多个设施。定每个设施仅仅属于一个森林,但每个森林可以有多个设施。多对多(多对多(MNMN)u一个实体的多个实例会与另一个参与该联系的实体的多个实例一个实体的多个实例会与另一个参与该联系的实体的多个实例相联系。相联系。u实体实体RIVERRIVER和和FACILITYFACILITY之间的联系之间的联系supplies_water_tosupplies_water_to正是这样的一个正是这样的一个联系。联系。第14页,本讲稿共65页qERE
10、R图图第15页,本讲稿共65页用象形图扩展ER模型实体象形图实体象形图 (1 1)象形图)象形图 象形图是一种将对象插在方框内的微缩图表示,这些微缩图用来扩象形图是一种将对象插在方框内的微缩图表示,这些微缩图用来扩展展ERER图,并插到实体矩形框中的适当位置。图,并插到实体矩形框中的适当位置。(2 2)形状)形状 形状是象形图中的基本图形元素,它代表着空间数据模型中的元素。形状是象形图中的基本图形元素,它代表着空间数据模型中的元素。一个模型元素可以是基本形状、复合形状、导出形状或备选形状。一个模型元素可以是基本形状、复合形状、导出形状或备选形状。(3 3)基本形状)基本形状 /基本形状的语法基
11、本形状的语法点点/线线面面基本形状的象形图基本形状的象形图第16页,本讲稿共65页(4 4)复合形状)复合形状 为了处理那些不能用某个基本形状表示的对象,为了处理那些不能用某个基本形状表示的对象,我们定义了一组聚合的形状,并用基数来量化这我们定义了一组聚合的形状,并用基数来量化这些复合形状。些复合形状。(5 5)导出形状)导出形状 如果一个对象的形状是由其他对象的形状导出的,如果一个对象的形状是由其他对象的形状导出的,那么就用斜体形式来表示这个象形图。那么就用斜体形式来表示这个象形图。0.111,n基数的语法基数的语法 0,n n使用了基数的多重形使用了基数的多重形状的象形图状的象形图0,nn
12、基本形状的语法基本形状的语法/导出形状的象形图导出形状的象形图第17页,本讲稿共65页(6 6)备选形状)备选形状备选形状可以用于表示某种条件下的同一个对象。备选形状可以用于表示某种条件下的同一个对象。例如,根据比例尺,一条河流可以表示成一个多边形或一条线。例如,根据比例尺,一条河流可以表示成一个多边形或一条线。备选形状的语法备选形状的语法 备选形状的象形图备选形状的象形图 (7 7)任意形状)任意形状对于形状的组合,我们用通配符(对于形状的组合,我们用通配符(*)表示,它表示各种形状。)表示,它表示各种形状。例如,一个灌溉网是由泵站(点)、水渠(线)以及水库(多边形)例如,一个灌溉网是由泵站
13、(点)、水渠(线)以及水库(多边形)所组成的。所组成的。第18页,本讲稿共65页(8 8)用户自定义形状)用户自定义形状 除了点、线和多边形这些基本形状外,用户还可以定义自己的形状。除了点、线和多边形这些基本形状外,用户还可以定义自己的形状。例如,为了表达更多的信息,用户可能更愿意使用感叹号之类的例如,为了表达更多的信息,用户可能更愿意使用感叹号之类的象形图来表示灌溉网。象形图来表示灌溉网。联系象形图联系象形图联系象形图用来构建实体间联系的模型。联系象形图用来构建实体间联系的模型。例如,例如,part-ofpart-of用于构建道路与路网之间联系的模型,或用于构建道路与路网之间联系的模型,或是
14、用于把森林划分成林分的建模。是用于把森林划分成林分的建模。Part_ofPart_of(网络)(网络)Part_of Part_of(分区)(分区)联系的象形图联系的象形图 第19页,本讲稿共65页带象形符号的带象形符号的ERER图图第20页,本讲稿共65页利用ER模型设计的步骤第21页,本讲稿共65页9.3.2利用利用UML模型设计模型设计qUMLUML模型是另一个流行的概念建模工具。是模型是另一个流行的概念建模工具。是用于面向对象软件设计的用于面向对象软件设计的概念层建模概念层建模的新兴标准之一。它是一种综合型语言,用于在概念层的新兴标准之一。它是一种综合型语言,用于在概念层对结构化模式和
15、动态行为进行建模。对结构化模式和动态行为进行建模。qUMLUML是一种通用的是一种通用的可视化建模语言可视化建模语言,用于对软件进行描述、可视,用于对软件进行描述、可视化处理理解、构造和建立软件制品的文档。化处理理解、构造和建立软件制品的文档。第22页,本讲稿共65页q作为一种建模语言,作为一种建模语言,UMLUML的定义包括的定义包括UMLUML语义和语义和UMLUML表示法两个部分:表示法两个部分:q(1 1)UMLUML语义,描述基于语义,描述基于UMLUML的精确元模型定义。元模型为的精确元模型定义。元模型为UMLUML的所有元素在的所有元素在语法和语义上提供了简单、一致、通用的定义性
16、说明,使开发者能在语义上语法和语义上提供了简单、一致、通用的定义性说明,使开发者能在语义上取得一致,消除了因人而异的最佳表达方法所造成的影响。取得一致,消除了因人而异的最佳表达方法所造成的影响。q(2 2)UMLUML表示法,定义表示法,定义UMLUML符号的表示法,为开发者或开发工具使用这些图形符号符号的表示法,为开发者或开发工具使用这些图形符号和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模和文本语法为系统建模提供了标准。这些图形符号和文字所表达的是应用级的模型,在语义上它是型,在语义上它是UMLUML元模型的实例。元模型的实例。UMLUML包含包含五类图,用例图、静
17、态图、对象五类图,用例图、静态图、对象图、行为图、交互图和实现图图、行为图、交互图和实现图。这里我们采用静态图当中的类图。这里我们采用静态图当中的类图。第23页,本讲稿共65页表表9-1 UML9-1 UML类图类图表示法表示法 第24页,本讲稿共65页9.4 9.4 逻辑结构设计逻辑结构设计q9.4.1 关系数据模型关系数据模型q9.4.2 E-R模型向关系模型转换模型向关系模型转换q9.4.3 面向实体的逻辑模型设计面向实体的逻辑模型设计第25页,本讲稿共65页9.4.1 9.4.1 关系数据模型关系数据模型q关系模型的基本思想是用二维表形式表示实体及其关系模型的基本思想是用二维表形式表示
18、实体及其联系(联系(见示例见示例)。二维表中的每一列对应实体的一个)。二维表中的每一列对应实体的一个属性,其中给出相应的属性值;每一行形成一个,由属性,其中给出相应的属性值;每一行形成一个,由多种属性组成的多元组,或称元组,与一特定实体相多种属性组成的多元组,或称元组,与一特定实体相对应。实体间联系和各二维表间联系采用关系描述或对应。实体间联系和各二维表间联系采用关系描述或通过关系直接运算建立。通过关系直接运算建立。第26页,本讲稿共65页q关系模型中应遵循以下条件:关系模型中应遵循以下条件:(1 1)二维表中同一列的属性是相同的;)二维表中同一列的属性是相同的;(2 2)赋予表中各列不同名字
19、(属性名);)赋予表中各列不同名字(属性名);(3 3)二维表中各列的次序是无关紧要的;)二维表中各列的次序是无关紧要的;(4 4)没有相同内容的元组,即无重复元组;)没有相同内容的元组,即无重复元组;(5 5)元组在二维表中的次序是无关紧要的。)元组在二维表中的次序是无关紧要的。q关关系系模模型型的的优优点点:(1 1)结结构构灵灵活活,可可满满足足所所有有用用布布尔尔逻逻辑辑运运算算和和数数字字运运算算规规则则形形成成的的询询问问要要求求;(2 2)能能搜搜索索、组组合合和和比比较较不不同同类类型型的的数数据据;(3 3)加加入入和和删删除除数数据据方方便便;(4 4)适适宜宜地地理理属属
20、性性数数据据的的模模型型。关关系系模模型型的的缺缺点点:许许多多操操作作都都要要求求在在文文件件中中顺顺序序查查找找满满足足特特定定关关系系的的数数据据,若若数数据据库库很很大大的的话话,这这一一查查找找过过程程要要花花很很多时间。多时间。第27页,本讲稿共65页q以地图以地图M M为例:为例:q地图地图M M中有两个面实体中有两个面实体 q多边形由多边形由a,b,ea,b,e组成组成 M Mq多边形由多边形由b,c,db,c,d组成组成 1 1 a a qa a边的两个端点是边的两个端点是1 1,2 2 e e 2 2 qb b边的两个端点是边的两个端点是2 2,4 4 4 4 b b c
21、cqc c边的两个端点是边的两个端点是2 2,3 3 d d qd d边的两个端点是边的两个端点是3 3,4 34 3qe e边的两个端点是边的两个端点是1 1,4 4第28页,本讲稿共65页关系模型例关系模型例第29页,本讲稿共65页9.4.2 E-R9.4.2 E-R模型向关系模型转换模型向关系模型转换q将将E-R图转换为关系模型实际上就是要将实体、实体的属性图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系转化为关系模式,这种转换一般遵循如下和实体之间的联系转化为关系模式,这种转换一般遵循如下原则原则:(1)一个实体型转换为一个关系模式。实体的属性就是关系的属性,实)一个实体
22、型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。体的码就是关系的码。(2)一个)一个M:N联系转换为一个关系模式。与该联系相连的各实体的码以及联系联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性。而关系的码为各实体码的组合。本身的属性均转换为关系的属性。而关系的码为各实体码的组合。(3)一个)一个1:N联系可以转换为一个独立的关系模式,也可以与联系可以转换为一个独立的关系模式,也可以与n端对应端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联
23、系本身的属性均转换为关系的属性,而关系的码为各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。端实体的码。第30页,本讲稿共65页(4)一个)一个1:1联系可以转换为一个独立的关系模式,也可以联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。与任意一端对应的关系模式合并。(5)三个或三个以上实体间的一个多元联系转换为一个关系模式。)三个或三个以上实体间的一个多元联系转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性。而关系的码为各实体码的组合。系的属性。而关系的
24、码为各实体码的组合。(6)同一实体集的实体间的联系,即自联系,也可按上述)同一实体集的实体间的联系,即自联系,也可按上述1:1、1:N和和M:N三种情况分别处理。三种情况分别处理。(7)具有相同码的关系模式可合并。)具有相同码的关系模式可合并。第31页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)q转换原则转换原则 一个实体型转换为一个关系模式一个实体型转换为一个关系模式。关系的属性关系的属性关系的属性关系的属性:实体型的属性:实体型的属性 关系的码关系的码关系的码关系的码:实体型的码:实体型的码例,学生实体可以转换为如下关系模式:例,学生实体可以转换为如下关系模式:学
25、生(学生(学号学号,姓名,出生日期,所在系,姓名,出生日期,所在系,年级,平均成绩)年级,平均成绩)性别、宿舍、班级、档案材料、教师、课程、教室、教科性别、宿舍、班级、档案材料、教师、课程、教室、教科书都分别转换为一个关系模式。书都分别转换为一个关系模式。第32页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)一个一个m:n联系转换为一个关系模式。联系转换为一个关系模式。关系的属性关系的属性关系的属性关系的属性:与该联系相连的各实体的码以:与该联系相连的各实体的码以及联系本身的属性及联系本身的属性 关系的码关系的码关系的码关系的码:各实体码的组合:各实体码的组合例,例,“
26、选修选修”联系是一个联系是一个m:n联系,可以将它转联系,可以将它转换为如下关系模式,其中学号与课程号为关系的换为如下关系模式,其中学号与课程号为关系的组合码:组合码:选修(选修(学号学号,课程号课程号,成绩),成绩)第33页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)一个一个1:n联系可以转换为一个独立的关系模式,也可以联系可以转换为一个独立的关系模式,也可以与与n端对应的关系模式合并。端对应的关系模式合并。1)转换为一个独立的关系模式转换为一个独立的关系模式uu关系的属性关系的属性关系的属性关系的属性:与该联系相连的各实体的码以:与该联系相连的各实体的码以及联系本
27、身的属性及联系本身的属性uu关系的码关系的码关系的码关系的码:n端实体的码端实体的码第34页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)一个一个1:n联系可以转换为一个独立的关系模式,联系可以转换为一个独立的关系模式,也可以与也可以与n端对应的关系模式合并。端对应的关系模式合并。2)与与n端对应的关系模式合并端对应的关系模式合并uu合并后关系的属性合并后关系的属性合并后关系的属性合并后关系的属性:在:在n端关系中加入端关系中加入1端关端关系的码和联系本身的属性系的码和联系本身的属性uu合并后关系的码合并后关系的码合并后关系的码合并后关系的码:不变:不变可以减少系统中的
28、关系个数,一般情况下更可以减少系统中的关系个数,一般情况下更倾向于采用这种方法倾向于采用这种方法第35页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)例,例,“组成组成”联系为联系为1:n联系。联系。将其转换为关系模式的两种方法:将其转换为关系模式的两种方法:1)使其成为一个独立的关系模式:使其成为一个独立的关系模式:组成(组成(学号学号,班级号),班级号)2)将其学生关系模式合并:将其学生关系模式合并:学生(学生(学号学号,姓名,出生日期,所在系,姓名,出生日期,所在系,年级,年级,班级号班级号,平均成绩),平均成绩)第36页,本讲稿共65页E-R图向关系模型的转换(
29、续)图向关系模型的转换(续)一个一个1:1联系可以转换为一个独立的关系模式,也可联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。以与任意一端对应的关系模式合并。1)转换为一个独立的关系模式转换为一个独立的关系模式uu关系的属性关系的属性关系的属性关系的属性:与该联系相连的各实体的码以及联:与该联系相连的各实体的码以及联系本身的属性系本身的属性uu关系的候选码关系的候选码关系的候选码关系的候选码:每个实体的码均是该关系的候:每个实体的码均是该关系的候选码选码第37页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)一个一个1:1联系可以转换为一个独立的关
30、系模式,也可以联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。与任意一端对应的关系模式合并。2)与某一端对应的关系模式合并与某一端对应的关系模式合并uu合并后关系的属性合并后关系的属性合并后关系的属性合并后关系的属性:加入对应关系的码和:加入对应关系的码和联系本身的属性联系本身的属性uu合并后关系的码合并后关系的码合并后关系的码合并后关系的码:不变:不变第38页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)例,例,“管理管理”联系为联系为1:1联系,可以有三种转换方法:联系,可以有三种转换方法:(1)转换为一个独立的关系模式转换为一个独立的关系模式
31、:管理(管理(职工号职工号,班级号),班级号)或或管理(职工号,管理(职工号,班级号班级号)(2)“管理管理”联系与班级关系模式合并联系与班级关系模式合并,则只需在班级关系中加入教,则只需在班级关系中加入教师关系的码,即职工号:师关系的码,即职工号:班级:(班级:(班级号班级号,学生人数,学生人数,职工号职工号)(3)“管理管理”联系与教师关系模式合并联系与教师关系模式合并,则只需在教师关系中加入班,则只需在教师关系中加入班级关系的码,即班级号:级关系的码,即班级号:教师:(教师:(职工号职工号,姓名,性别,职称,姓名,性别,职称,班级号班级号,是否为优秀班主任)是否为优秀班主任)第39页,本
32、讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)注意:注意:q从理论上讲,从理论上讲,1:1联系可以与任意一端对应的关系模式合并。联系可以与任意一端对应的关系模式合并。q但在一些情况下,与不同的关系模式合并效率会大不一样。但在一些情况下,与不同的关系模式合并效率会大不一样。因此究竟应该与哪端的关系模式合并需要依应用的具体情因此究竟应该与哪端的关系模式合并需要依应用的具体情况而定。况而定。q由于连接操作是最费时的操作,所以一般应以尽量减由于连接操作是最费时的操作,所以一般应以尽量减少连接操作为目标。少连接操作为目标。例如,如果经常要查询某个班级的班主任姓名,则将管理联例如,如果
33、经常要查询某个班级的班主任姓名,则将管理联系与教师关系合并更好些。系与教师关系合并更好些。第40页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)三个或三个以上实体间的一个多元联系转换为一个关系三个或三个以上实体间的一个多元联系转换为一个关系模式。模式。关系的属性关系的属性关系的属性关系的属性:与该多元联系相连的各实体的:与该多元联系相连的各实体的码以及联系本身的属性码以及联系本身的属性 关系的码关系的码关系的码关系的码:各实体码的组合:各实体码的组合例,例,“讲授讲授”联系是一个三元联系,可以将它转换联系是一个三元联系,可以将它转换为如下关系模式,其中课程号、职工号和书
34、号为关为如下关系模式,其中课程号、职工号和书号为关系的组合码:系的组合码:讲授(讲授(课程号,职工号,书号课程号,职工号,书号)第41页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)同一实体集的实体间的联系,即同一实体集的实体间的联系,即自联系自联系,也可按上述,也可按上述1:1、1:n和和m:n三种情况分别处理。三种情况分别处理。例,如果教师实体集内部存在领导与被领导的例,如果教师实体集内部存在领导与被领导的1:n自联自联系,我们可以将该联系与教师实体合并,这时主码职工系,我们可以将该联系与教师实体合并,这时主码职工号将多次出现,但作用不同,可用不同的属性名加以区号将
35、多次出现,但作用不同,可用不同的属性名加以区分:分:教师:教师:职工号职工号,姓名,性别,职称,姓名,性别,职称,系主任系主任第42页,本讲稿共65页E-R图向关系模型的转换(续)图向关系模型的转换(续)具有相同码的关系模式可合并。具有相同码的关系模式可合并。目的目的:减少系统中的关系个数。:减少系统中的关系个数。合并方法合并方法:将其中一个关系模式的全部属性:将其中一个关系模式的全部属性加入到另一个关系模式中,然后去掉其中的加入到另一个关系模式中,然后去掉其中的同义属性(可能同名也可能不同名),并适同义属性(可能同名也可能不同名),并适当调整属性的次序。当调整属性的次序。第43页,本讲稿共6
36、5页E-R图向关系模型的转换(续)图向关系模型的转换(续)例,例,“拥有拥有”关系模式:关系模式:拥有(拥有(学号学号,性别),性别)与学生关系模式:与学生关系模式:学生(学生(学号学号,姓名,出生日期,所在系,年级,姓名,出生日期,所在系,年级,班级号,平均成绩)班级号,平均成绩)都以学号为码,可以将它们合并为一个关系模式:都以学号为码,可以将它们合并为一个关系模式:学生(学生(学号学号,姓名,性别,出生日期,所在系,姓名,性别,出生日期,所在系,年级,班级号,平均成绩)年级,班级号,平均成绩)第44页,本讲稿共65页应应用用q例:例:q在著书工作中,一位作者可以编写多本图书,一本书可在著书
37、工作中,一位作者可以编写多本图书,一本书可以由多位作者编写。以由多位作者编写。设作者的属性有:作者号,姓名,单位,电话;书的属设作者的属性有:作者号,姓名,单位,电话;书的属性有:书号,书名,出版社,性有:书号,书名,出版社,日期。试完成如下问题:日期。试完成如下问题:q(1)设计该系统的)设计该系统的E-R图;图;q(2)将该)将该E-R图转换为关系模型结构;图转换为关系模型结构;q(3)指出转换结果中每一个关系模式的候选码。)指出转换结果中每一个关系模式的候选码。第45页,本讲稿共65页(1)E-R图(2)将该)将该E-R图转换为关系模型结构如下:图转换为关系模型结构如下:作者(作者(作者
38、号作者号,姓名,单位,电话),姓名,单位,电话)图书(图书(书号书号,书名,出版社,日期),书名,出版社,日期)编写(编写(作者号,书号作者号,书号)(3)以上关系模式中带下划线的为该关系模式的候选码)以上关系模式中带下划线的为该关系模式的候选码作者号姓名单位电话出版社书号书名日期作者图书编写mn第46页,本讲稿共65页9.4.3 9.4.3 面向实体的逻辑模型设计面向实体的逻辑模型设计q地理实体在模型中表示为地理实体在模型中表示为要素要素。要素是由几何实体和属性组成的。它包括。要素是由几何实体和属性组成的。它包括简单类型简单类型,例如,一个界址点、一个行政界线、一块土地;它们的几何形态分别为
39、例如,一个界址点、一个行政界线、一块土地;它们的几何形态分别为简单点,简单线和简单区。还有一些简单点,简单线和简单区。还有一些复杂类型的实体复杂类型的实体,例如,一个河流的,例如,一个河流的流域。它的几何特性对应的是多种形态的几何实体,所以它的几何特性是一流域。它的几何特性对应的是多种形态的几何实体,所以它的几何特性是一个复合类型。换句话说,通过原子几何实体(点、线、区)的任意组合可表个复合类型。换句话说,通过原子几何实体(点、线、区)的任意组合可表达和描述任意几何复杂度的实体。达和描述任意几何复杂度的实体。q什么是几何实体什么是几何实体?它是地理对象的外观特征或可视化形状。地理实体可以用三?
40、它是地理对象的外观特征或可视化形状。地理实体可以用三种几何实体表示在地图上:点、线、多边形。继续细分下去,几何形态包括种几何实体表示在地图上:点、线、多边形。继续细分下去,几何形态包括单点、多点、单弧段、多弧段、多边形等。单点、多点、单弧段、多弧段、多边形等。第47页,本讲稿共65页1要素类的要素类的建模与表达建模与表达第48页,本讲稿共65页2注记类的建注记类的建模与表达模与表达第49页,本讲稿共65页3关系类的建模与表达关系类的建模与表达第50页,本讲稿共65页4规则的建模与表达规则的建模与表达第51页,本讲稿共65页9.5 9.5 空间数据库物理设计空间数据库物理设计q9.5.1 空间数
41、据库存储策略空间数据库存储策略q9.5.2 空间数据库关系模式设计空间数据库关系模式设计第52页,本讲稿共65页9.5.1 空间数据库存储策略对象对象-关系数据库管理,基于商业数据库进行存储,其关系数据库管理,基于商业数据库进行存储,其存储策略如下:存储策略如下:数据存储层对象管理层并发控制 管理器安全管理器地 理 数 据 库 管 理 器 接 口数据库对象类、要素类、关系类、注记类等地理数据库层数据管理层SDE 接口SDE客户端SDE服务器CSSQLSQL第53页,本讲稿共65页9.5.2 9.5.2 空间数据库关系模式设计空间数据库关系模式设计q空间数据库主要包含空间数据库主要包含空间数据和
42、元数据信息空间数据和元数据信息两个部分。两个部分。q空间数据空间数据以以“地理数据库地理数据库要素数据集要素数据集类类”的层的层次进行组织。例如,类层次的对象有要素类、注记次进行组织。例如,类层次的对象有要素类、注记类、对象类、关系类和规则等,每一种对象在空间类、对象类、关系类和规则等,每一种对象在空间数据库当中需要用一个表集来描述其信息和内部关数据库当中需要用一个表集来描述其信息和内部关系。系。q元数据信息元数据信息则描述前面所有空间数据的元数据信息,使用则描述前面所有空间数据的元数据信息,使用数据字典进行表达。数据字典进行表达。第54页,本讲稿共65页q1 1地理数据库数据字典表关系地理数
43、据库数据字典表关系q2 2要素类的关系模式要素类的关系模式表表 9-3 9-3 要素类信息关系表说明要素类信息关系表说明表表 9-4 9-4 几何实体信息关系表说明几何实体信息关系表说明表表 9-5 9-5 点信息关系表说明点信息关系表说明表表 9-6 9-6 弧段信息关系表说明弧段信息关系表说明表表 9-7 9-7 弧段拓扑信息关系表说明弧段拓扑信息关系表说明表表 9-8 9-8 点图形参数关系表说明点图形参数关系表说明表表 9-9 9-9 线图形参数关系表说明线图形参数关系表说明表表 9-10 9-10 区图形参数关系表说明区图形参数关系表说明第55页,本讲稿共65页q3 3注记类的关系模
44、式注记类的关系模式表表 9-11 9-11 注记信息关系表说明注记信息关系表说明q4 4关系类的关系模式关系类的关系模式表表 9-12 9-12 关系类信息关系表说明关系类信息关系表说明q5 5规则的关系模式规则的关系模式表表 9-13 9-13 有效规则关系表说明有效规则关系表说明表表 9-14 9-14 属性规则关系表说明属性规则关系表说明表表 9-15 9-15 关系规则关系表说明关系规则关系表说明表表 9-16 9-16 拓扑规则关系表说明拓扑规则关系表说明表表 9-17 9-17 空间规则关系表说明空间规则关系表说明第56页,本讲稿共65页9.6 9.6 空间数据库的实施和维护空间数
45、据库的实施和维护q9.6.1 空间数据库系统实施空间数据库系统实施q9.6.2 空间数据库系统维护空间数据库系统维护第57页,本讲稿共65页9.6.1 9.6.1 空间数据库系统实施空间数据库系统实施 空间数据库的概念设计、逻辑设计和物理设计修改以后,便可空间数据库的概念设计、逻辑设计和物理设计修改以后,便可以开始正式的进行数据库实施了。实施的过程,应当以实施计划为以开始正式的进行数据库实施了。实施的过程,应当以实施计划为指南,尽量按照计划进行实施。但是再好的计划也是不可能完全准指南,尽量按照计划进行实施。但是再好的计划也是不可能完全准确的,在实施过程中常常需要对实施计划做或多或少的改动。任何
46、确的,在实施过程中常常需要对实施计划做或多或少的改动。任何方面的改动都应当以书面形式备案,做到有案可查(吴信才等,方面的改动都应当以书面形式备案,做到有案可查(吴信才等,20022002)。空间数据库的实施一般过程如下:)。空间数据库的实施一般过程如下:(1 1)数据录入)数据录入:数据录入的数据源应包括系统设计的各类源数据,:数据录入的数据源应包括系统设计的各类源数据,以检测各输出软件的可行性和数据转换格式的正确性。以检测各输出软件的可行性和数据转换格式的正确性。第58页,本讲稿共65页(2 2)数据编辑)数据编辑:对录入的数据在进入数据库以前的编辑:对录入的数据在进入数据库以前的编辑和预处
47、理要尽可能测试各种编辑功能和操作,检测其安全和预处理要尽可能测试各种编辑功能和操作,检测其安全性和可操作性。性和可操作性。(3 3)数据库建立)数据库建立:应保证所选择的试验小区的数据足以建:应保证所选择的试验小区的数据足以建立一个完整的空间数据库和属性数据库,以检测其结构的立一个完整的空间数据库和属性数据库,以检测其结构的合理性和拓扑关系的正确性以及数据连接的正确性等,同合理性和拓扑关系的正确性以及数据连接的正确性等,同时对数据库管理系统的功能也应进行全面测试。时对数据库管理系统的功能也应进行全面测试。(4 4)数据分析与处理)数据分析与处理:利用所建立的数据库的数据对应用:利用所建立的数据
48、库的数据对应用型型GISGIS的基本分析功能,特别是对应用模型进行测试,检查模的基本分析功能,特别是对应用模型进行测试,检查模型的正确性和可靠性。型的正确性和可靠性。(5 5)数据输出)数据输出:输出结果能否满足所设计的要求和用户的需:输出结果能否满足所设计的要求和用户的需要。要。第59页,本讲稿共65页9.6.2 9.6.2 空间数据库系统维护空间数据库系统维护q1 1维护的内容维护的内容q1 1)程序的维护)程序的维护在系统维护阶段,会有一部分程序需要改动。根据运行记录,在系统维护阶段,会有一部分程序需要改动。根据运行记录,发现程序的错误,这时需要改正;或者随着用户对系统的熟悉,发现程序的
49、错误,这时需要改正;或者随着用户对系统的熟悉,用户有更高的要求,部分程序需要改进;或者环境发生变化,用户有更高的要求,部分程序需要改进;或者环境发生变化,部分程序需要修改。部分程序需要修改。q2 2)数据文件的维护)数据文件的维护业务发生了变化,从而需要建立新文件,或者对现有文件的结业务发生了变化,从而需要建立新文件,或者对现有文件的结构进行修改。构进行修改。第60页,本讲稿共65页q3 3)代码的维护)代码的维护随着环境的变化,旧的代码不能适应新的要求,必须进行改造,随着环境的变化,旧的代码不能适应新的要求,必须进行改造,制定新的代码或修改旧的代码体系。代码维护的困难主要是新制定新的代码或修
50、改旧的代码体系。代码维护的困难主要是新代码的贯彻,因此各个部门要有专人负责代码管理。代码的贯彻,因此各个部门要有专人负责代码管理。q4 4)机器、设备的维护)机器、设备的维护包括机器、设备的日常维护与管理。一旦发生小故障,要有专包括机器、设备的日常维护与管理。一旦发生小故障,要有专人进行修理,保证系统的正常运行。人进行修理,保证系统的正常运行。第61页,本讲稿共65页q2 2维护的类型维护的类型q1 1)更正性维护)更正性维护这是指由于发现系统中的错误而引起的维护。工作内容包括诊断这是指由于发现系统中的错误而引起的维护。工作内容包括诊断问题与修正错误。问题与修正错误。q2 2)适应性维护)适应