关系数据库的规范化理论与数据库设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

X’
Y, 则称 Y 完全函数依赖于 X,记作:
X FY
若X→Y,但Y不完全函数依赖于X,则称 Y 部分函数依 赖于X,记作:
X
PY
.
16
三、完全函数依赖与部分函数依赖
例: 在关系 SC(Sno, Cno, Grade)中, 用X 表示(Sno, Cno),用Y 表示 Grade,
那么, (Sno, Cno)→ Grade 但是 Sno →Grade,Cno → Grade, 因此 (Sno, Cno) F Grade
.
18
五、函数依赖的逻辑蕴含
设R<U,F>是一个关系模式,X,Y是U中属性组,F是函数依 赖集,若在R<U,F>的任何一个满足F中函数依赖的关系r上, 都有函数依赖X->Y成立,则称F逻辑蕴含X->Y(F推导出X>Y)
例如 关系模式S(SNO,NAME,AGE,DNO,DEAN),其属性组上的 函数依赖集为
F={SNO->NAME,SNO->AGE,SNO->DNO,DNO->DEAN} SNO->DEAN就是F所逻辑蕴含(推导出)的一个函数依赖 在关系模式R<U,F>中为F所逻辑蕴含的函数依赖全体称为F闭 包,F+
.
19

定义 设 K 为关系模式 R<U,F>中的属性或属性组合。若 K f U,
并且不存在K的真子集决定U,则 K 称为 R 的一个侯选码 (Candidate Key)。若关系模式 R 有多个候选码,则选定其中 的一个做为主码(Primary key)。 主属性与非主属性 全码(ALL KEY):主码为关系模式所有属性
.
20
例:关系模式CSZ(CITY,ST,ZIP)其属性组 上的函数依赖为
.
23
Armstrong的推论
合并规则:X->Y,Y->Z,则X->YZ 伪传递规则:X->Y,WY->Z,则XW->Z 分解规则:X->Y,Z Y,则X->Z 关系模式码的确定 1、找出F集合的所有决定因素,即->左边属
性,组合为U1 2、从U1中找出最小属性组K,使K->U 则K为候选码,再找出其他候选码

B 2009.04,2008.09
.
10
考点2 函数依赖
例 在关系模式R(SNO,NAME,AGE)中,
根据语义 一个SNO值对应一个AGE值,不可能出现一个SNO 值对应两个AGE值,我们称 SNO函数决定AGE,写作SNO-AGE或AGE函数依赖于SNO 如果一个AGE对应一个SNO,但我们决不能认为AGE函数决定 SNO,因为它不符合语义
.
11
函数依赖定义
设R(U)是属性集U上的一个关系模式,X和 Y均为U的子集。若对于R(U)的任一个可 能的关系r,r中不可能有两个元组在X中的 属性值相等,而在Y中的属性值不等,那么 称X函数决定Y XY,或Y函数依赖于X
X为决定因素
.
12
一、函数依赖
例如:学生(Sno,Sname,Sdept,Sage)
U,则【1】为F所逻辑蕴含
XZ->ZY 2008.09 3、下列关于部分函数依赖的叙述中,哪条是正确的? A、若X->Y,且存在Y的真子集Y’,X->Y’,则Y对X部分函数依赖 B、若X->Y,且存在Y的真子集Y’,X->Y’,则Y对X部分函数依赖 C、若X->Y,且存在X的真子集X’,X’->Y,则Y对X部分函数依赖 D、若X->Y,且存在X的真子集X’,X’->Y,则Y对X部分函数依赖
.
17
四、传递函数依赖
定义5.3 在关系模式R(U)中,如果X→Y,Y→Z,且Y X, Y→X,则称 Z 传递函数依赖于X。
注: 如果Y→X, 即 X←→Y,则称Z 直接函数依赖于X。
例: 在关系 Std(Sno, Sdept, Mname)中,有: Sno → Sdept,Sdept → Mname Mname 传递函数依赖于Sno
记作: SnamLeabharlann Baidu Sdept
.
13
几个术语和符号
如果 X→Y,则 X 叫做决定因素(Determinant) 如果 X→Y , Y → X ,则记作: X ←→ Y
如果Y不函数依赖于X,则记作: X→Y
.
14
二、平凡函数依赖与非平凡函数依赖 如果 X→Y,但 Y X,则称 X→Y 是非平凡的函数 依赖
中 C、没经授权的用户对关系进行插入 D、插入操作因为违反完整性约束条件而遭到拒绝
B 2008.09 2005.09
.
8
3、下列哪些条是由于关系模式设计不当引起的问题? I、数据冗余 II、插入异常 III、删除异常 IV、丢失修改 V 级联回滚 A、仅II和III B、仅I、II和III C、仅I、IV和V D、仅II、III和IV B 2008.04 4、由于关系模式设计不当所引起的更新异常指的是 A、两个事务并发地对同一个数据项进行更新而造成数据库不一致 B、关系的不同元组中数据冗余,更新时未能同时更新有关元组而造成数
CNAME 机械设计
高等数学 管道工程 数据结构
删除异常:某个教师课程 全部删除,教师的地址姓 名信息全部删除
如何设计一个好的关系模式, 需要学习规范化理论
.
7
考题
1、下列哪一条不是由于关系模式设计不当所引起的问题? A)数据冗余 B)插入异常 C)更新异常 D)丢失修改
D 2009.03 2、由于关系模式设计不当所引起的插入异常指的是 A、两个事务并发地对同一关系进行插入而造成数据库不一致 B、由于码值的一部分为空而不能将有用的信息作为一个元组插入到关系
F={(CITY,ST)->ZIP,ZIP->CITY}
推导后(CITY,ST)和(ST,ZIP)为候选码,所 以CITY,ST,ZIP都是主属性
.
21
Armstrong公理系统(推理规则)
设F是属性组U上的一组函数依赖,有如下 推理规则
自反律:若Y X U,则X->Y为F逻辑蕴含(推导出) 增广律:若X->Y为F逻辑蕴含,且Z U,则XZ->YZ为F逻
三级数据库技术
第7章 关系数据库的规范化 理论与数据库设计
本部分占总分的8% 主要内容:
规范化理论概述 函数依赖
关系模式分解 数据库设计过程
.
2
了解关系模式设计的常见问题及应对措施, 是学习本章的前提和基础
函数依赖定义、逻辑蕴含、码、armstrong 公理、常用范式和关系模式分解方法考试 重点
由于在所有的元组中,Sno都是唯一的,因此, Sno函数确定Sname 和 Sdept。
或者说, Sname 和 Sdept函数依赖于Sno
Sno Sname, Sno Sdept
如果规定Sname不能重复,那么在所有的元组 中Sname也都是唯一的,可以说,Sname函数确 定Sdept,或者说, Sdept函数依赖于Sname
C 2007.09
.
26
3、设有关系模式R(B,C,M,T,A,G), 根据语义有如下函数依赖集:F={B>C,(M,T)->B,(M,C)->T,(M,A)->T,(A,B)>G},关系模式R的码是【1】
(1)取出函数依赖的左部,B,M,T,C,A
(2)找出最小组合决定其他属性,M,A
.
27
4、下列关于函数依赖的叙述中,哪一条是不正确的? A、若X->Y,Y->Z,则X->Z B、若X->Y,Y’Y,则X->Y’ C、若X->Y,X’X,则X’->Y D、若X’X,则X->X’ A 传递 B 分解 D 自反律
如果 X→Y,但 Y X, 则称 X→Y 是平凡的函数 依赖
例:在关系 SC(Sno, Cno, Grade)中, 非平凡函数依赖:(Sno, Cno)→ Grade
平凡函数依赖: (Sno, Cno) → Sno (Sno, Cno) → Cno
.
15
三、完全函数依赖与部分函数依赖
定义5.2 在关系模式 R(U)中,如果X→Y,并且对于 X 的任何一个真子集X’,都有
函数依赖、关系模式规范化程度和模式分 析等价标准是重中之重
.
3
学习本章的目的:
针对具体应用,数据要存储,需要什么样的关 系模式,解决关系数据库的逻辑设计问题(如 何建表)
要建合适的表,需要学习规范化理论
.
4
7.1 关系模式中的常见问题
考点1 关系模式设计的常见问题
已知数据库要存储 教师的姓名和地址,还要存 储教师教的课程号和课程
关系模式的规范化:解决插入、删除和更 新异常,尽量消除数据冗余,消除不合适 的数据依赖
这就要求关系模式应该满足一定的条件
关系模式满足不同的条件,称为不同的范 式
.
30
1NF范式
如果关系模式R的所有属性都是不可再分解 的,则称R属于第一范式,简称1NF,记做 R∈1NF。
满足1NF的关系为规范化的关系,否则为非规 范化的关系
据库不一致 C、未经授权的用户对数据进行了更新 D、对数据的更新因为违反完整性约束条件而遭到拒绝 B 2007.09
.
9
下列关于规范化理论的叙述中,哪一条是不正确的? A)规范化理论是数据库设计的理论基础 B)规范化理论最主要的应用是在数据库概念结构设计阶段 C)规范化理论最主要的应用是在数据库逻辑结构设计阶段 D)在数据库设计中,有时候会降低规范化程度而追求高查询性
.
24
考题
1、下列哪一条不属于Armstrong公理系统中 的基本推理规则?
A、若Y X,则X->Y B、若X->Y,则XZ->YZ C、若X->Y,且Z Y,则X->Z D、若X->Y,且Y->Z,则X->Z A 自反律 B 增广律 C分解律 D 传递律 C 2009.03
.
25
2、Armstrong公理系统中的增广律的含义:设R<U,F>是一个 关系模式,X,Y是U中属性组,若X->Y为F所逻辑蕴含,且Z
1NF的模式是关系数据库的最基本要求,不是 理想的模式,可能存在部分函数依赖,存 在冗余和更新异常
.
31
例如:学生关系S(学号,姓名,成绩),其中属 性成绩又分为英语、数学和语文三个数据项, 由 于存在属性再分,所以关系模式S不是1NF,即 S∈1NF
例题:下列关于1NF的叙述中,哪条不正确 A、满足1NF中的关系可以包含复合属性 B、满足1NF中的关系不可以包含复合属性 C、满足1NF的关系称为规范化关系,否则称为非规
CNAME 机械设计 高等数学 管道工程 数据结构
.
6
该关系模式可能出现如下 问题:
TNAME
王明
数据冗余
更新异常(多个记录更新,刘宏
容易产生数据不一致) 王明
插入异常:TNAME,CNO码, 李红
某个教师没上课,CNO为
空,不能插入)
ADDRESS CNO 18栋302 043
21栋503 056 18栋302 041 17栋503 002
C 2007.04 5、下列关于关系模式的码和外码的叙述中,哪些是正确的 I 主码可以是单个属性,也可以是属性组 II 外码可以是单个属性,也可以是属性组 III 一个关系模式的主码与该关系模式的任何一个外码的交一定为空 IV 一个关系模式的主码与该关系模式的所有外码的并一定包含了该关系
模式的所有属性 A)I和II B)I、II和III C)I、II和IV D)I、III和IV
辑蕴含 传递律:若X->Y及Y->Z为F所逻辑蕴含,则X->Z为F所
逻辑蕴含
.
22
例:关系模式CSZ(CITY,ST,ZIP)其属性组 上的函数依赖为 F={(CITY,ST)->ZIP,ZIP->CITY}
证明 (ST,ZIP)是候选码 1、ZIP->CITY F中已知 2、(ST,ZIP)->(ST,CITY) 增广律 3、(ST,ZIP)->(ST,CITY,ZIP) 增广律
设计的关系模式:T(TNAME,ADDRESS,CNO,CNAME) 其中,TNAME-教师姓名,ADDRESS-教师地址,CNO-任教课程号, CNAME-课程名称。一个教师可以教多门课程
TNAME 王明 刘宏 王明 李红
ADDRESS CNO 18栋302 043 21栋503 056 18栋302 041 17栋503 002
A
.
28
6、下列关于关系模式的码的叙述中,哪一项是不正确的? A)当候选码多于一个时,选定其中一个作为主码 B)主码可以是单个属性,也可以是属性组 C)不包含在主码中的属性称为非主属性 D)若一个关系模式中的所有属性构成码,则称为全码
C 不包含在任何码中的属性
.
29
考点3 1NF、2NF,3NF,BCNF
范化关系 D、不满足1NF的数据库模式不能称为关系数据库
相关文档
最新文档