中 国 地 质 大 学
资 源 信 息 系 统
第四章 地矿属性
数据库子系统的
设计与应用
资源信息系统China University of Geosciences
目 录
第二节 地矿资源属性数据库结构设计2
第一节 数据库系统原理与方法概述31
第三节 地矿资源属性数据 库 系统的应用3
资源信息系统China University of Geosciences
?数据库设计的规范化理论
?数据库设计一般方法
?资源数据库结构设计
第二节 资源数据库结构设计
本节提要
资源信息系统China University of Geosciences
一、数据库设计的规范化理论
?数据库设计是建立数据库应用系统的核心问题 。
设计的关键是 如何使设计的数据库能合理地存储
用户的数据, 方便用户进行数据处理 。 本节将对
数据库设计进行讨论, 并给出关于如何进行设计
的一些基本理论和原则 。
?关系数据库:自从提出了关系数据库理论后, 许
多专家学者对关系数据库理论进行了深入的研究
和发展, 借助于数学工具规定了一整套的关系数
据库设计的理论和方法 ——函数依赖理论和关系
规范化理论 。 该理论使关系数据库设计方法走向
完备 。
资源信息系统China University of Geosciences
?数据库设计完全是 人 的问题, 而不是数据库管理
系统的问题 。
?系统不管设计是好是坏, 照样运行,但好的设计和
差的设计有天壤之别 。
?谁设计:在大型多用户共享数据库系统中, 数据
库设计应当由 数据库管理员和系统分析员一起负
责, 和用户一道工作, 了解各个用户的要求, 把
所有要求合并起来, 共同为整个数据库做出恰当
的, 完整的设计 。
(一)数据库设计概述
资源信息系统China University of Geosciences
(二)问题的提出
?开发一个具体的数据库应用系统时, 核心问题是设计数据库
结构, 数据库结构的设计好坏是系统开发成败的关键所在 。
?当一个应用系统的数据库结构设计完成之后, 就可利用我们
选定的关系数据库管理系统提供的数据定义语言去描述库结
构, 即定义关系数据库模式及关系模式 。
?但是, 由于设计者对现实世界的认识或看问题的方法不同,
同一个系统可以设计出不同的关系数据库结构 。
?那么, 我们如何根据设计的对象去构造一个好的关系数据库
结构, 即构造几个关系 ( 表 ) 呢? 每个关系由哪些属性组成,
好坏如何评价呢?
?为了说明关系模式设计的性能好坏, 让我们先看一个例子 。
例如, 某学校要建立一个学生管理数据库, 有如下属性:学
号, 系名, 系主任, 成绩, 课程 。
资源信息系统China University of Geosciences
?我们可以组成一个关系名为 UN
的关系模式,UN( 学号, 课程,
成绩, 系名, 系主任 )
?现实世界的事实告诉我们:
? ① 一个系有若干学生, 但一个学
生只属于一个系 。
? ② 一个系只有一名系主任 。
? ③ 一个学生可以选修多门功课,
每门课程可有若干学生选修 。
? ④ 每个学生学习每门课程有一个
成绩 。
当 ( 学号, 课程 ) 组合属性值一
定时, 也就确定了该学号和课
程对应的成绩, 系名, 系主任
的属性值, 并且有唯一性, 所
以 ( 学号, 课程 ) 具有记录
( 元组 ) 标识作用, 是该关系
的主键 ( 关键字 ) 。
?这个关系模式在使用中会出现
什么问题呢?
资源信息系统China University of Geosciences
( 1) 数据冗余
?每个系主任的姓名和系名与该系的每个学
生所选修的每一门功课的成绩出现的次数
一样多, 这将造成存储空间的浪费和维护
代价太高 。 例如, 该系有 100名学生, 每
个学生平均选 30门课, 则该系名和系主
任名要重复 100 x 30= 3000次 。
?这种数据重复存放造成空间浪费称为, 数
据冗余, 。
资源信息系统China University of Geosciences
2,修改异常
?例中, 如果要更换系主任, 就必须逐一修
改每条记录 。 若有疏忽, 则会造成数据的
不一致性 ( 同一系的学生有不同的系主
任 ), 当然也就破坏了数据的完整性 ( 由
于修改失误, 造成数据的不正确 ), 这称
为, 修改异常, 或称为, 潜在的不相容
性, 。
资源信息系统China University of Geosciences
3,插入异常
?在关系模式 UN中, 主键是 ( 学号, 课程 ) 。
主键的特性不能为空或部分为空, 主键为空
或部分为空的记录 ( 元组 ) 不能存入数据库
中, 否则, 就会因为失去标识而使关系中存
在相同元组, 这是关系性质的完整性约束所
不允许的 。
?例中, 如果一个系刚成立, 尚无学生, 或者
有了学生但还没有选课, 我们就无法将该系
的系名和系主任插入到数据库中, 这称为
,插入异常, 。
资源信息系统China University of Geosciences
4,删除异常
反过来, 如果某个系的学生全部毕业了, 我们
删除该系学生及其选课信息的同时, 会把系名和系
主任的信息同时删掉 。
?上述这些问题的出现显然是我们不希望的, 因此我
们说, 上述关系模式是一个, 不好, 的关系数据库
模式 。, 不好, 的数据库设计在设计中应该避免 。
?可见, 关系数据库中的各关系不能任意设计, 关系
要按一定的要求去设计, 如果设计不好, 将大量的
字段 ( 属性 ) 放于一个关系模式中, 这就使用户的
数据库要忍受着上述几个问题的干扰, 运行效率低,
编程和维护工作量大 。 因此, 用户必须对数据库设
计给予高度重视 。
资源信息系统China University of Geosciences
(三) 解决办法
?上述模式为什么会发
生问题呢? 这是因为
关系中属性之间存在
不好的联系 。
?假如我们把上述模式
改造分解为 SD,DM
和 SG三个关系模式,
就会消除上述问题,
从而得到一个好的关
系模式 。
?三个关系模式如图所
示, 下图是三个关系
模式填入数据的实例 。
资源信息系统China University of Geosciences
所以, 当我们企图把太多的信息存放在
一个关系时, 就会出现数据冗余和更新异常
等问题 。 主要表现如下:
1,数据冗余 。
2,修改异常 。
3,删除异常 。
4,插入异常。
资源信息系统China University of Geosciences
( 1)问题的根源
?关系的键码函数决定该关系的所有其它
属性。由于键码能唯一确定一个元组,
所以,也可以说关系的键码函数决定该
关系的所有属性。一个关系中的所有属
性都函数依赖于该关系的键码。不同的
属性在关系模式中所处的地位和扮演的
角色是不同的。把键码所在的属性称为
主属性,而把键码属性以外的属性称为
非主属性。
资源信息系统China University of Geosciences
问题的根源( 2)
?不同的属性对键码函数依赖的性质和程
度是有差别的 。 有的属于直接依赖, 有
的属于间接依赖 ( 通常称为 传递依赖 ) 。
?当键码由多个属性组成时,有的属性函
数依赖于整个键码属性集,而有的属性
只函数依赖于键码属性集中的一部分属
性。
资源信息系统China University of Geosciences
?从上述例子中, 我们可以看到, 用几个结构简单
的关系去取代原来结构复杂的关系, 可有效地消
除, 异常,, 这种分解过程叫做关系的规范化 。
?分解时采用了关系规范化理论作指导 。 一般来说,
通过规范化理论可以把不好的关系数据库模式逐
步转变为一个好的关系数据库模式 。
?所以, 任何一个设计关系数据库的人, 都要熟悉
规范化技术与理论, 了解规范化理论必须先了解
关系模式中各属性之间的相互函数依赖, 因此,
下面将先讨论属性间 ( 字段 ) 的函数依赖关系,
然后讨论关系规范化理论, 从而使大家掌握关系
数据库的设计理论, 并将其用到具体的关系数据
库设计工作中去 。
资源信息系统China University of Geosciences
函数依赖
?如果关系 R的两个元组在属性 A1,A2,… An
上一致(也就是,两个元组在这些属性所对
应的各个分量具有相同的值),则它们在另
一个属性 B上也一致。那么,我们就说在关
系 R中属性 B函数依赖于属性 A1A2… An。
A1A2… An B,
,A1,A2,…, An函数决定 B”。 A1A2… An称
为决定因素。
?学生(学号,姓名,院系,系主任,课程,成绩)
?学号 姓名
资源信息系统China University of Geosciences
?对于函数依赖 W A,如果存在
V W( V是 W的真子集)而函数依赖
V A成立,则称 A部分依赖于 W; 若不存在这
种 V,则称 A完全依赖于 W。
学生(学号,姓名,院系,系主任,课程,成绩)
学号,课程 姓名,院系,系主任
当存在 非主属性对键码部分依赖 时,就会
产生数据冗余和更新异常。若非主属性对键
码完全函数依赖,则不会出现类似问题。
?
完全依赖与部分依赖
P
资源信息系统China University of Geosciences
·对于函数依赖 X Y,如果 Y X( X不
函数依赖于 Y) 而函数依赖 Y Z成立,
则称 Z对 X传递依赖 。
?学生(学号,姓名,院系,系主任,课程,成绩)
?学号 院系,院系 系主任
如果 X Y,且 Y X,则 X,Y相互依
赖,这时 Z与 X之间就不是传递依赖,而
是直接依赖了。
院系 系主任 系主任 院系
传递依赖
资源信息系统China University of Geosciences
解决的途径
?部分依赖和传递依赖有一个共同之处,
这就是, 二者都不是基本的函数依赖,
而都是导出的函数依赖:
?部分依赖是以对键码的某个真子集的
依赖为基础
?传递依赖的基础则是通过中间属性联
系在一起的两个函数依赖。
资源信息系统China University of Geosciences
?导出的函数依赖在描述属性之间的联系
方面并没有比基本的函数依赖提供更多
的信息 。 在一个函数依赖集中, 导出的
依赖相对于基本的依赖而言, 虽然从形
式上看多一种描述方式, 但从本质上看,
则完全是冗余的 。
?正是由于关系模式中存在对键码的这种
冗余的依赖导致数据库中的数据冗余和
更新异常。
资源信息系统China University of Geosciences
?解决的途径 ——消除关系模式中
各属性对键码的冗余的依赖 。
?由于冗余的依赖有部分依赖与传
递依赖之分,而属性又有主属性
与非主属性之别,把解决的途径
分为几个不同的级别,用范式来
区别。
资源信息系统China University of Geosciences
?范式 就是符合某一种级别的关系模式的集合 。
?目前主要有六种范式:
? 第一范式
? 第二范式
? 第三范式
? BC范式
? 第四范式
? 第五范式
?第一范式需满足的要求最低, 在第一范式基础上满足进一步
要求的为第二范式:
?1NF 2NF 3NF BCNF 4NF 5NF
?通过分解把属于低级范式的关系模式转换为几个属于高级范
式的关系模式的集合,这一过程称为 规范化 。
资源信息系统China University of Geosciences
第一范式( 1NF)
?如果一个关系模式 R的所有属性都是不可分的基
本数据项(原子项),则这个关系属于第一范
式。
? 联系方式
? 电话号码,Email,邮政编码,通信地址
?在任何一个关系数据库系统中,第一范式是对
关系模式的一个最起码的要求。不满足第一范
式的数据库模式不能称为关系数据库。
资源信息系统China University of Geosciences
第二范式( 2NF)
?若关系模式 R属于第一范式, 且每个
非主属性 都 完全函数依赖于键码, 则
R属于第二范式 。
? 当 1NF的关系消除了非主属性对关键字的部分函
数依赖, 即可成为满足 2NF的关系 。 如果关键字
是单个属性, 该关系模式自然属于 2NF。 当关系
模式 R属于 2NF,插入异常, 删除异常和修改复
杂的问题会有所改善 。
资源信息系统China University of Geosciences
第三范式( 3NF)
?若关系模式 R属于第一范式, 且每个 非
主属性 都 不传递依赖于键码, 则 R属于第
三范式 。
?属于 3NF的关系中所有属性不但要能够唯一地被主
关键字所标识, 而且它们之间还必须相互独立, 不
存在部分函数依赖和传递函数依赖关系 。 3NF
?关系可从 2NF关系消除非主属性对关键字的传递函
数依赖后获得 。 当 R∈ 3NF时, 通常出现的插入异常,
删除异常和修改复杂的问题可得到有效解决 。
资源信息系统China University of Geosciences
规范化和模式分解
?1,规范化
?把一个低一级范式的关系模式转换为若干个高一
级范式的关系模式的过程叫作规范化 。
?规范化的基本思想是逐步消除数据依赖中不合适
的部分, 使模式中的各关系模式达到某种程度的
,分离,, 即, 一事一地, 的模式设计原则, 让
一个关系描述一个概念, 一个实体或者实体间的
一种联系 。 多于一个概念, 就把它, 分离, 出去 。
因此所谓规范化实质上是概念的单一化 。
?在设计数据库应用系统中, 关系的规范化是一个
重要的, 不可缺少的工作, 用户应给予充分的重
视 。
资源信息系统China University of Geosciences
?2,模式分解
?在关系数据库中, 对关系模式的最基本要
求是满足第一范式, 这样的关系模式是合
法的, 允许的, 但人们发现有些关系模式
存在插入, 删除, 修改异常和数据冗余等
弊病, 人们要寻求解决这些问题的方法,
这就是规范化的目的 。
?把一个关系模式分解为 n个关系模式, 称为
关系模式的分解 。 模式分解是提高关系模
式范式等级的重要方法 。
资源信息系统China University of Geosciences
?下面我们举例来说明关系模式的分解方法和遵守
的准则 。 为便于表示函数依赖关系, 可在主属性
下方划一横线, 并用箭头标出属性之间的依赖关
系 。
?例 1:求关系 UN(学号, 课程, 成绩, 系名, 系主任 ) 的
范式等级 。 同时, 分解使之达到 3NF。
分析,① 各属性都是不可分的数据项;
② 存在部分函数依赖, 例如 ( 学号, 课程 ) 系名 。
结论,UN∈1NF, 不属于 2NF。
资源信息系统China University of Geosciences
?我们采用投影运算使 UN由 1NF规范化为 2NF。 方法是将
UN关系中属性间的部分函数依赖分解为 SG和 SDM两关系
模式, 模式如下:
分析,SG不存在部分函数依赖和传递函数依赖 。
结论,SG∈ 3NF。
分析,① SDM不存在部分函数依赖, 因此, SDM
∈ 2NF。
② SDM存在传递函数依赖, 例如:学号 系名,
系名 学号, 系名 系主任 。
结论,SDM∈ 2NF,不属于 3NF。
我们分析一下, 如果关系 SDM
不属于 3NF会带来什么问题 。
① 系主任名仍要重复存储 ( 类
似, 更换系主任, 的修改 ),
仍需要修改较多的记录 。
② 当某一系没有招生或学生全
部毕业, 系主任和系名信息将
丢失, 所以仍有插入, 删除,
修改异常 。
资源信息系统China University of Geosciences
?为解决这些问题, 可对 SDM分解, 使之成
3NF,分解结果如下:
很明显, SD∈ 3NF,DM∈ 3NF。
至此, 我们用满足 3NF的三个关系模式 SG,SD和 DM
取代原来的关系模式 UN,所有的异常, 弊病, 全部消
失了 。 我们还可以看出, SG,SD和 DM均用一个关系
模式表示单个实体 ( 学生实体, 选课实体, 系实体 )

资源信息系统China University of Geosciences
? 例 2:假设某单位有订货
合同一览表, 如图 4,4
所示 。 该表中的零件单价
在订货时根据双方谈判时
决定 。 这种表规范程度低,
其中包含有合同清单表 。
表的主关键字是, 合同号
十零件号,, 存在部分函
数依赖, 例如, 主关键字
中的合同号 订货日期
等 。 规范化的方法是将表
进行分解, 使之成为一个
独立的, 满足 3NF规范要
求的表 。 这样就得到订货
合同和合同清单两个规范
的表, 如图 4,5所示 。
资源信息系统China University of Geosciences
?一般说来, 没有异常弊病的数据库设计是
好的数据库设计 。 但我们应从实际出发,
对于那些只要求查询而不要求插入, 删除
等操作的系统, 则不必担心发生, 异常,,
也不必要求过高的范式 。 如果过度分解,
即使对消除异常有好处, 但连接代价是很
大的, 这可能得不偿失 。 因此, 要综合考
虑, 权衡得失 。
资源信息系统China University of Geosciences
分解的原则
主要涉及两个原则:
·无损连接 ( Lossless Join)
如果对新的关系进行自然连接得到的元
组的集合与原关系完全一致, 则称为无损
连接 。
无损连接反映了模式分解的数据等价原则 。
资源信息系统China University of Geosciences
·保持依赖 ( Preserve Dependency)
如果分解后总的函数依赖集与原函数
依赖集保持一致, 则称为保持依赖 。
保持依赖反映了模式分解的依赖等价
原则。依赖等价保证了分解后的模式与
原有的模式在数据语义上的一致性。
资源信息系统China University of Geosciences
?比如, 我们对 SDM的分解可以有如下三种结果, 它们均属于
3NF,但分解质量却大不相同 。
?① SD( 学号, 系名 ) DM( 系名, 系主任 ) ;
?② SD( 学号, 系名 ) SM( 学号, 系主任 ) ;
?③ SM( 学号, 系主任 ) DM( 系主任, 系名 ) 。
?第 ① 种分解是无损的, 因为同时保持了原来的学号 系名和
系名 系主任 ( 现实规律是先有系名后有系主任 ) 的两个完
全函数依赖, 这种分解是进行规范化要追求的目标 。
?第 ② 种虽然也是无损的, 但是, 这种分解只保持了学号 系名,
未保持系名 系主任,, 因此
存在着, 异常, 。 例如, 学生转系, 要同时修改 SD和 SM两个
关系, 显然这种分解不符合要求 。
?第 ③ 种分解使用了系名 系主任, 丢失了学号 系名, 这种
分解是有损的, 使分解后丢失了信息, 不能从学生查询到所在
系名 。 丢失信息从根本上是不允许的 。
资源信息系统China University of Geosciences
关系模式规范化流程图:
资源信息系统China University of Geosciences
二、数据库设计一般方法
?采用系统化, 规范化设计方法 。
?四个阶段进行数据库设计 。
? 理解需求分析 。
? 概念设计, 我们将使用 E-R模型作为概念设计的工具 。
? 逻辑设计, 以关系模型和关系数据库管理系统为基
础讨论逻辑设计 。
? 物理设计 。
资源信息系统China University of Geosciences
概 述
?在给定的 DBMS,操作系统和硬件环境下,
如何表达用户的需求, 并将其转换为有效的
数据库结构, 构成较好的数据库模式, 这个
过程称为数据库设计 。
?数据库及其应用系统开发的全过程可分为
两大阶段:数据库系统的分析与设计阶段;
数据库系统的实施、运行与维护阶段 。
资源信息系统China University of Geosciences
数据库设计的任务
?根据一个单位的信息需求、处理需求和数据库
的支撑环境,设计出数据模式 (包括外模式、
逻辑(概念)模式和内模式 )以及典型的应用
程序。
?其中信息需求表示一个单位所需要的数据及其
结构。处理需求表示一个单位需要经常进行的
数据处理。前者表达了对数据库的内容及结构
的要求,也就是静态要求;后者表达了基于数
据库的数据处理要求,也就是动态要求。
资源信息系统China University of Geosciences
?信息需求定义所设计的数据库将要
用到的所有信息, 描述实体, 属性,
联系的性质,描述数据之间的联系 。
?处理需求定义所设计的数据库将要
进行的数据处理, 描述操作的优先
次序, 操作执行的频率和场合, 描
述操作与数据之间的联系 。
资源信息系统China University of Geosciences
数据库设计有两种不同的方法
?以信息需求为主, 兼顾处理需求, 这种方
法称为面向数据的设计方法 ( 提倡 ) ;
?以处理需求为主, 兼顾信息需求, 这种方
法称为面向过程的设计方法 。
资源信息系统China University of Geosciences
数据库设计的 3个特点
① 反复性 (Iterative)
② 试探性 (Tentative)
③ 分步进行 (Multistage)
资源信息系统China University of Geosciences
数据库设计的步骤
?数据库的设计一般分为四步:
需求分析
概念设计
逻辑设计
物理设计
需求分析
概念设计
逻辑设计
物理设计
需求分析说明书
概念模式
逻辑模式
物理模式
信息需求
硬件和操作系统
处理需求
DBMS特性
独立于 DBMS
相关于 DBMS
资源信息系统China University of Geosciences
?需求分析
首先必须确认数据库的用户和用途。
由于数据库是一个单位的模拟,数据库
设计者必须对一个单位的基本情况有所
了解。收集和分析这些资料的过程称为
需求分析。
资源信息系统China University of Geosciences
?概念设计
用概念数据模型,例如 E-R模型,表示
数据及其相互间的联系,产生反映用户信
息需求和处理需求的数据库概念模式。数
据库概念模式是独立于任何数据库管理系
统、面向现实世界的数据模型。
资源信息系统China University of Geosciences
?逻辑设计
在逻辑设计阶段,将第二步所
得到的数据库概念模式,转换成
以 DBMS的逻辑数据模型表示的逻
辑模式。
资源信息系统China University of Geosciences
?物理设计
根据数据库的逻辑和概念模式、
DBMS及计算机系统所提供的功能和
施加的限制,设计数据库文件的物
理存储结构、各种存取路径。
资源信息系统China University of Geosciences
在不同的设计阶段将形成数据库的三层
模式 。
1) 需求分析阶段, 综合用户应用需求;
2) 概念设计阶段, 形成独立于数据库管理
系统 DBMS的概念模式;
3) 逻辑设计阶段, 将概念模式 ( 可用 E-R
图描述 ) 转换成 DBMS支持的数据模型 ( 如
关系模型 ), 形成数据库的逻辑模式;
资源信息系统China University of Geosciences
4) 据用户处理的要求和安全性的考
虑, 在基本表的基础上建立必要的视
图, 形成数据库的外模式;
5)物理设计阶段,根据 DBMS的特点
和处理的需要,选择存储结构,建立
索引,形成数据库的内模式。
资源信息系统China University of Geosciences
?数据库的设计阶段与数据库的模式结
构之间的联系如图所示。
应用 1
应用需求
应用 n
应用需求
概念模式 逻辑模式
内模式
应用 1 应用 n
外模式 外模式
综合
转换
映象
映象
设计
使用
资源信息系统China University of Geosciences
?需求分析分为
?应用领域的调查
?定义数据库支持的信息与应用
?定义数据库操作任务
?定义数据字典等几步,
资源信息系统China University of Geosciences
?数据流图( Data Flow Diagram) 可以
表示现行系统的信息流动和加工处理
等详细情况,是现行系统的一种逻辑
抽象表示,它独立于系统的实现。
资源信息系统China University of Geosciences
成绩
管理





成绩
统计




奖学
金评
委会
成绩清单
统计结果
资源信息系统China University of Geosciences
定义操作任务
?数据库操作任务对应于最终数据库系
统的事务。一个应用包括一个或多个
数据库操作任务。每个数据库操作任
务可属于多个应用。
资源信息系统China University of Geosciences
?操作任务定义的内容如下:
1,操作任务名
3,所属应用名
5,输出数据项
7.数据库操作定义
9,使用频率
2,操作任务编号
4,输入数据项
6,功能定义
8,操作信息量
10,响应时间
资源信息系统China University of Geosciences
概念设计
?概念设计的任务包括两个方面:
?数据库概念模式设计,以需求分析阶段
所识别的数据项为基础, 使用高级数
据模型建立数据库概念模式
?事务设计,考察需求分析阶段提出的数
据库操作任务, 形成数据库事务的高
级说明
资源信息系统China University of Geosciences
?应用得最广泛的是实体联系 (E-R)
模型 。 E-R模型除了具有上述的特
点外, 还可以用 E-R图表示数据模
式, 便于理解与交流 。
资源信息系统China University of Geosciences
E-R模型
?实体 — 联系数据模型基于对现实世界的这样一
种认识:现实世界由一组成为实体的基本对象
以及这些对象间的联系构成。
?数据库中实体通过属性集合来描述,例如
account-number 与 blance属性描述了银行某
个特定的帐户
?联系是实体间的相互关系。例如 depositor联
系将一个客户和她的帐号联系在一起。
?同一类型的所有实体的集合称为实体集,同一
类型的所有联系的集合称为联系集
资源信息系统China University of Geosciences
概念模型 -- ER模型基本概念
?实体( Entity),客观存在并可以相互区
分的事物叫实体。 (例如:一个个学生、一辆
辆轿车)
?属性( Attribute),实体一般具有若干特
征,称之为实体的属性。 例如:学生具有学
号、姓名等属性。
?域( Domain),一个属性可能取值的范
围称为这个属性的域 。 例如:性别的域值只
能为“男”或“女”
资源信息系统China University of Geosciences
ER模型基本概念
?候选码, 能够唯一标识实体的 属性 或最小
属性组 称为候选码,可能存在多个候选码,
设计者必须指明一个候选码做主码(关键
字)。例如:见图
?实体型( Entity type),具有相同属性的实
体具有共同的特征和性质,用实体名及其属
性集合来抽象、刻画同类实体,称为实体型。
学生
学号
姓名 性别
专业
资源信息系统China University of Geosciences
ER模型基本概念
?实体集( Entity set),同型实体的集合
?联系:现实世界的事物之间是有联系的,
这种联系在信息世界中反映为:实体 (型 )
内部的联系和 实体 (型 )之间 的联系。
?两个实体型之间的联系
?一对一联系 ( 1,1) 例如:部门、经理
?一对多联系( 1,n) 例如:部门、雇员
?多对多联系( m,n) 例如:学生、课程
资源信息系统China University of Geosciences
ER模型基本概念
资源信息系统China University of Geosciences
⑴ 实体 例,客户 帐户 课程
⑶ 属性 例:,客户名 学号
⑵ 关系 例,存款 教课
1 1 1 N M N
E-R图(实体 –联系图)
资源信息系统China University of Geosciences
例 1:银行存款的简化模型
客户 存款 帐户
编号
姓名
性别
电话
帐户 号 余额
资源信息系统China University of Geosciences
实例分析
?例子 2:开发学校信息管理系统。学校中有
若干系,每个系有若干班级和教研室,每个
教研室有若干教师,其中有教授和副教授每
人各带若干名研究生,每个班有若干学生,
每个学生选若干课程,每门可由若干学生选
修。
资源信息系统China University of Geosciences
实例分析( E-R图)

系名 电话号
班名
地址
学号
人数 班级
学生课程
教研室
教师
有 设有
属于 工作
选修 指导
姓名 住处
课程号 课程名 学时
教研室名
地址
电话号
职工号 姓名
职称
研究方向
1
n n
1
1
n
1
n
n m
研究方向是否四级
1n 指导人数
资源信息系统China University of Geosciences
逻辑设计
?数据库逻辑设计的任务是把数据库概
念设计阶段产生的数据库概念模式变
换为数据库逻辑模式。数据库逻辑设
计依赖于逻辑数据模型和数据库管理
系统。
资源信息系统China University of Geosciences
例:银行存款的简化模型
客户 存款 帐户
住址
编号
姓名
电话
帐户 号 余额
资源信息系统China University of Geosciences
customer
Custo_id Custo_nam
e
Custo_address Custo_tel
001001 黎 铧 武汉 278989
001002 黎 铧 武汉 108989
Accoun_i
d
balance Accoun_i
d
Custo_id
account deopsitor
资源信息系统China University of Geosciences
逻辑模式的规范化和优化
从 E-R图转换而来的关系模式还只是逻
辑模式的雏形, 要成为逻辑模式, 还需要
进行下列几步的处理:
· 规范化;
· 适应DBMS限制条件的修改;
· 对性能, 存储空间等的优化;
· 用DBMS提供的DDL定义逻辑模式 。
资源信息系统China University of Geosciences
物理设计
?数据库物理设计的任务是, 为每
个关系模式选择合适的存储结构
和存取路径 。
资源信息系统China University of Geosciences
选择索引的一般步骤
满足下列条件之一, 不宜建立索引:
① 很少出现在查询条件中的属性;
② 属性值很少的属性 。
③ 属性值分布严重不均的属性 。
④ 经常更新的属性或表, 因为更新时
有关的索引需要做相应的修改;
资源信息系统China University of Geosciences
凡符合下列条件之一, 可以考虑在有关属
性上建立索引:
① 主键码和外键码上一般都建有索引, 这有
利于主键码唯一性检查和引用完整性约束
检查;主键码和外键码通常都是连接条件
中的公共属性, 建立索引, 可显著提高连
接查询的效率 。
② 对于以读为主或只读的表, 只要需要, 存
储空间又允许, 可以多建索引;
资源信息系统China University of Geosciences
数据库的实施
根据数据库的逻辑设计和物理设
计的结果, 建立实际的数据库结构,
装入数据, 进行测试和试运行的过
程称为数据库的实施 。
1,建立实际数据库结构
2,装入试验数据, 调试应用程序
3,装入实际数据
4,进入试运行
资源信息系统China University of Geosciences
三、地矿资源属性数据库结构设计
?数据库结构的设计是数据库系统设计的核心。
其主要任务是确定整个数据库的数据逻辑结
构。
?地矿资源勘查信息系统子系统的设计过程,
实质上就是将反映勘查区的有关地矿资源属
性的数据,按照系统分析的结果组织成符合
于某个特定的数据库管理系统 (例如,
FoxBASE+,FoxPRO,Oracle或 SyBASE等 )的
数据模式所要求的数据结构。
资源信息系统China University of Geosciences
(一)地矿资源勘查区数据模式的建立
?先将地矿模型中各种实体集的全部属性,
按其来源和取值方式分成许多类别,再在
各个类别中进行比较,合并其中同种或同
名的属性,然后再与有关的“标准”、
“规范”及现行的生产记录表格作比较,
归纳为几个大类,得到了一系列数据模式。
每个数据模式便是一个新的实体集,而新
实体集内的每个数据项对应着一个属性。
资源信息系统China University of Geosciences
煤资源勘查区地质
信息
勘探开
发史
地理条

水文条

岩心编

采样化

勘查区
概况
测井分

生产管

综合数

其他数

煤炭资源勘查区全局数据模式
资源信息系统China University of Geosciences
(二)数据文件结构的设计
?1.划分实体集, 给定初选文件名称
?2.选择描述实体集的全部属性,确定
索引关键字
?3.分析实体集内各属性的依赖关系,
进行数据规范化处理
?4.定义数据完整性约束
资源信息系统China University of Geosciences
沉积岩岩心编

煤心编录
岩心编录
岩浆岩岩心编

构造岩岩心编

岩心编录数据模式的实体集划分
资源信息系统China University of Geosciences
勘查区岩心编录表
501 钻孔概况 515 火成岩综合描述
502 岩层一般参数 516 火成岩矿物成分描述
503 矿芯与矿层 (体 )描述 517 火成岩包裹体描述
504 煤芯与煤层描述 518 火成岩的孔洞构造描述
505 岩性一般参数及其他关联关系 519 接触变质岩描述
506 岩石结构描述 520 节理描述
507 沉积构造描述 521 钻孔控制的断层描述
509 碎屑成分描述 531 岩心综合鉴定表
510 同生砾描述 532 煤芯鉴定表
511 异化粒描述 533 沉积岩岩心综合鉴定表
512 结核描述 534 火成岩岩心综合鉴定表
513 实体化石描述 535 变质岩岩心综合鉴定表
514 遗迹化石描述
?1.划分实体集,给定初选文件名称
资源信息系统China University of Geosciences
岩层一般参数的数据文件结构
数据文件名 MDBN502.DBF 索引文件名,NDBN502.CDX
索引关键字 钻孔编号 +岩层序号
序号 字段说明 字段名 约 束 单 位 类型 长度 小数
1 钻孔编号 MDBTAG C 5 0
2 岩层序号 MDBWAA C 5 0
3 岩石地层单位 DSB 专项 C 6 0
4 底面深度 MDBWAC m N 7 2
5 岩心长度 TKAJAI m N 5 2
6 岩心倾角 MDBWAD 度 (° ) N 4 1
7 岩石基本名称 MDAEI 专项 C 8 0
8 原生色 YSHBA 专项 C 7 0
9 次生色 YSHBB 专项 C 7 0
10 层厚型式 MDBWAK 专项 C 7 0
11 底部接触关系 MDBWAQ 专项 C 8 0
12 样品编号 PKHFB C 11 0
13 备注 MDBTZ C 12 0
14 数据入库日期 MDBTKI 月日年 D 8 0
2.选择描述实体集的全部属性,确
定索引关键字
3.分析实体集内各属性的依赖关系,
进行数据规范化处理
4.定义数据完整性约束
资源信息系统China University of Geosciences
The end
Thanks