文档介绍:数据库系统概论之关系数据理论
第四章 关系数据理论
数据依靠
范式
关系模式 规范化
*数据依靠 公理系统
*模式 分解
*
数据库系统概论之关系数据理论
对通常 数据库逻辑设计
一样含有理论上 意义
引 言
数据库设计 三个关键步骤:
概念设计 ——— 逻辑设计 ——— 物理设计
现
实
世
界
层次
网状
关系
概念模型
数据模型
物理
模型
文件、
索引等
关系数据库规范化理论是关系数据库逻辑设计 理论基础
处理 中心问题: 怎样结构一个好 数据模式
*
数据库系统概论之关系数据理论
引 言
关系数据库逻辑设计
针对具体问题, 怎样结构一个适合于它 数据模式
数据库逻辑设计 工具──关系数据库 规范化理论
*
数据库系统概论之关系数据理论
数据依靠
一、关系模式
关系模式
—— 用于定义关系 结构框架
表示为一个五元组: R(U, D, DOM, F)
其中: (1) 关系名R
(2) 一组属性名U
(3) 属性组U中属性所来自 域D
(4) 属性到域 映象集合DOM
(5) 属性间数据 依靠关系集合F
简化为三元组: R(U, F)
描述关系 元
组语义, 限定
组成关系 各
元组必需满足
完整性约束
条件
*
数据库系统概论之关系数据理论
二、数据依靠对关系模式 影响
数据依靠 —— 经过一个关系中数据间值 相等是否表现出来 数据间 相互关系。它是现实世界属性间相互联络 抽象, 是数据内在 性质, 是语义 表现。
在多个类型 数据依靠中, 最关键 是:
函数依靠(Functional Dependency 简记为FD)
多值依靠(Multivalued Dependency 简记为MVD)
函数依靠普遍存在于现实生活中
例: 描述一个学生关系
S(Sno, SN, SD, SA)
学生号确定后, 姓名及所在系、年纪被唯一确定。
记作: Sno → SN, Sno → SD, Sno → SA
*
数据库系统概论之关系数据理论
为何要讨论数据依靠?(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
*
数据库系统概论之关系数据理论
关系SCD
SNO
SDEPT
MName
Cname
Grade
S1
计算机
刘伟
CS
90
S1
计算机
刘伟
IS
85
S2
信息
王平
MA
57
S2
信息
王平
DB
80
S2
信息
王平
DS
70
S2
信息
王平
MA
70
S3
信息
王平
CS
0
S3
信息
王平
IS
70
S3
信息
王平
OS
85
S4
自动化
刘伟
CS
93
*
数据库系统概论之关系数据理论
为何要讨论数据依靠?(2)
Student(U, F)
U = {Sno, Sdept, Mname, Cname, Grade}
F={Sno → Sdept, Sdept → Mname
(Sno, Cname) → Grade}
依据上述 语义要求, 并分析以上关系