1 / 114
文档名称:

数据库系统概论之关系数据理论(ppt 114页).ppt

格式:ppt   大小:1,638KB   页数:114
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据库系统概论之关系数据理论(ppt 114页).ppt

上传人:静雨蓝梦 2020/12/14 文件大小:1.60 MB

下载得到文件列表

数据库系统概论之关系数据理论(ppt 114页).ppt

相关文档

文档介绍

文档介绍:1
数据库系统概论
第四章 关系数据理论
2
第四章 关系数据理论
数据依赖
范式
关系模式的规范化
*数据依赖的公理系统
*模式的分解
3
对一般的数据库逻辑设计
同样具有理论上的意义
引 言
数据库设计的三个主要步骤:
概念设计 ——— 逻辑设计 ——— 物理设计




层次
网状
关系
概念模型
数据模型
物理
模型

文件、
索引等
关系数据库规范化理论是关系数据库逻辑设计的理论基础
解决的中心问题:如何构造一个好的数据模式
4
引 言
关系数据库逻辑设计
针对具体问题,如何构造一个适合于它的数据模式
数据库逻辑设计的工具──关系数据库的规范化理论
5
数据依赖
一、关系模式
关系模式
—— 用于定义关系的结构框架
表示为一个五元组:R(U,D,DOM,F)
其中: (1) 关系名R
(2) 一组属性名U
(3) 属性组U中属性所来自的域D
(4) 属性到域的映象集合DOM
(5) 属性间数据的依赖关系集合F
简化为三元组: R(U,F)
描述关系的元
组语义,限定
组成关系的各
元组必须满足
的完整性约束
条件
6
二、数据依赖对关系模式的影响
数据依赖 —— 通过一个关系中数据间值的相等与否体现出来的数据间的相互关系。它是现实世界属性间相互联系的抽象,是数据内在的性质,是语义的体现。
在多种类型的数据依赖中,最重要的是:
函数依赖(Functional Dependency 简记为FD)
多值依赖(Multivalued Dependency 简记为MVD)
函数依赖普遍存在于现实生活中
例:描述一个学生关系
S(Sno,SN,SD,SA)
学生号确定后,姓名及所在系、年龄被唯一确定。
记作:Sno → SN, Sno → SD, Sno → SA
7
为什么要讨论数据依赖?(1)
例:建立一个描述学校的数据库
涉及的对象:学生(Sno) 系(Sdept) 系主任(Mname)
课程名(Cname) 成绩(Grade)
建立单一关系模式:Student(U,F)
U = {Sno,Sdept,Mname,Cname,Grade}
语义:一个系有若干学生,一个学生只属一个系
一个系只有一个系主任
一个学生可选修多门课,每门课有若干学生选修
学生选修一门课就有一个成绩
F={Sno→Sdept,Sdept→Mname,(Sno,Cname) → Grade}
在此关系模式中填入一部分具体的数据,则可得到SCD关系模式的实例,即一个教学管理数据库,
Sno
Mname
Sdept
Cname
Grade
8
关系SCD
9
为什么要讨论数据依赖?(2)
Student(U,F)
U = {Sno,Sdept,Mname,Cname,Grade}
F={Sno → Sdept,Sdept → Mname
(Sno,Cname) → Grade}
根据上述的语义规定,并分析以上关系中的数据,我们可以看出:(SNO, Cname)属性的组合能唯一标识一个元组,所以(SNO, Cname)是该关系模式的主关系键。但在进行数据库的操作时,会出现以下几方面的问题。
不是好模式
10
1. 数据冗余。每个系名和系主任的名字存储的次数等于该系的学生人数乘以每个学生选修的课程门数,同时学生的姓名、年龄也都要重复存储多次,数据的冗余度很大,浪费了存储空间。
2. 插入异常。如果某个新系没有招生,尚无学生时,则系名和系主任的信息无法插入到数据库中。
因为在这个关系模式中,(SNO, Cname)是主关系键。根据关系的实体完整性约束,主关系键的值不能为空,而这时没有学生,SNO和Cname均无值,因此不能进行插入操作。
另外,当某个学生尚未选课,即Cname未知,实体完整性约束还规定,主关系键的值不能部分为空,同样不能进行插入操作。