数据库系统原理与技术 第3章
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
21
3. 数据库设计者可以对现实世界作强制的规定。例 如规定不允许同名人出现,函数依赖“姓名→年 龄”成立。所插入的元组必须满足规定的函数依 赖,若发现有同名人存在, 则拒绝装入该元组。
22
4 .函数依赖与属性间的联系类型有关 ① 在一个关系模式中,如果属性X与Y有1:1联系时, 则存在函数依赖X→Y,Y→X,即X ←→ Y。 例如, 当员工没有重名时,Eno ←→ Ename。
一、问题的提出 数据冗余:是指同一数据在多个不同的地方存放。 数据冗余不仅导致数据量的增加,使系统处理速
度变慢,效率降低,而且易发生错误,影响全系统
的性能。
33
关系规范化
操作异常包括插入操作异常和删除操作异常两
类。
插入操作异常指欲录入的数据因缺少关键字或
关键字数据不完整而不能被录入的现象。
删除操作异常指不应当被删除的数据因部分主
称Y 完全函数依赖于X,记作X → Y
26
函数依赖
四、传递函数依赖
一般说来,如X、Y为关系R中属性(组)
(Y∈X)有X→Y,Y
X但Y → Z ,则称Z
传递函数依赖于X,记作X
Z。
27
函数依赖
以上关系中,课程名→职工号、职工号
课程
名,但职工号→老师名、职工号→性别,则有:
课程名
性别;课程名
28
老师名。
关系数据库中的关系必须满足最低的关系要求 满足不同程度要求的为不同范式。 目 前 主 要 有 六 种 范 式 : 1NF 、 2NF 、 3NF 、 BCNF、4NF、5NF。 满足最低要求的称第一范式,简称为1NF。
37
关系规范化
1、第一范式(1NF)
任给关系R,如果R中每个列与行的交点处的
取值都是不可再分的基本元素,则R达到第一范式,
23
函数依赖
二、部分函数依赖
若X,Y为关系R中的属性(组),如X→Y且X中 存在真子集X’(X’≠X∧X’∈X),满足X’→Y,则称 Y部分函数依赖于X,记作
24
图3.2 部分函数依赖示意
25
函数依赖
三、完全函数依赖
如X,Y是关系R中属性(组),X→Y且对于X的
任何真子集X’(X’≠X∧X’∈X),都有 X’ Y,则
D1×D2的基数=3×2=6,目数=2+3=5
6
关系数据库基本概念
又例如:D1={(X1,Y1),(X2,Y2),(X3,Y3)} D3={P1,P2,P3} 则:D1×D3={(X1,Y1,P1),(X1,Y1,P2), (X1,Y1,P3),(X2,Y2,P1),(X2,Y2,P2),(X2,Y2,P3),(X3,Y3,P 1),(X3,Y3,P2),(X3,Y3,P3)} D1×D3的基数=3×3=9,目数=2+1=3
8
8
SUPERVISOR 张清玫 张清玫 张清玫 张清玫 张清玫 张清玫 刘逸 刘逸 刘逸 刘逸 刘逸 刘逸
SPECIALITY 计算机专业 计算机专业 计算机专业 信息专业 信息专业 信息专业 计算机专业 计算机专业 计算机专业 信息专业 信息专业 信息专业
9
POSTGRADUATE 李勇 刘晨 王名 李勇 刘晨 王名 李勇 刘晨 王名 李勇 刘晨 王名
4
关系数据库基本概念
基数:域中数值(元素)的个数。
笛卡尔积的基数:构成该积所有域的基数 累乘积, 称为这些域的笛卡尔积。
笛卡尔积的目数:元组中每个分量的列数
5
关系数据库基本概念
例:设有D1、D2二个域,求D1×D2。已知:
D1={(X1,Y1),(X2,Y2),(X3,Y3)}
D2={(M1,W1,Z1),(M2,W2,Z2)} 则:D1×D2={(X1,Y1,M1,W1,Z1),(X1,Y1,M2,W2,Z2), (X2,Y2,M1,W1,Z1),(X2,Y2,M2,W2,Z2),(X3,Y3,M1,W1,Z 1),(X3,Y3,M2,W2,Z2)}
简称1NF,记为R∈1NF 。
根据关系的基本性质可见,符合关系基本性 质的关系均达到第一范式。
38
关系规范化
例如:将人事卡片关系分解为三个关系,从而达到 第一范式。
39
关系规范化
40
关系规范化
2、第二范式(2NF) 如果一个关系达到第一范式,且不存在任何非主 属性对候选关键字的部分函数依赖,则称此关系达 到第二范式,简称2NF,记为 R∈2NF 。 或者表示为如果一个关系达到第一范式,且不存 在非主属性对构成候选关键字的部分主属性的完全 函数依赖,则该关系达到第二范式。
关系从2NF优化到3NF的方法是: 将对关键字存在传递函数依赖的那些属性与 其完全函数依赖的非主属性分解出来建立新的关
系,而它们所依赖的那个非主属性作为关联属性
要存在于原关系中。
46
关系规范化
18
函数依赖
例如第1章中表1.3所示“系” 关系中: 系代码→系名,系代码→系地址, 系代码→系电话,系代码→系专业设臵 如果系名值是惟一的,即各系名均不相同,那么还 有函数依赖集: 系名→系代码,系名→系地址,系名→系电话,系 名→系专业设臵
19
函数依赖
决定因素可能为两个以上属性构成的属性组。 在一个关系中,如果一个属性(组)值不唯 一,则这个属性(组)与任何属性(组)的函数 依赖关系中,它都不是决定因素。
关键字可能由一个属性构成,也可能由多个
属性构成。关键字不可能再与其他的属性构成新 的候选关键字。
30
候选关键字与主属性
在任何关系中至少有一个关键字。 根据关系的基本要求,在一个关系中任何二个 元组不全同。因而在一个N元关系中,如果:
单个属性都不是关键字
任何两个属性的属性组也不是关键字
20
说明:
1. 函数依赖不是指关系模式R的某个或某些关系实例 满足的约束条件,而是指R的所有关系实例均要满 足的约束条件。(函数依赖关系的存在与时间无 关) 2. 函数依赖是语义范畴的概念。只能根据数据的语 义来确定函数依赖,而不能按照其形式化定义来证 明一个函数依赖是否成立。 例如“姓名→年龄”这个函数依赖只有在不允许 有同名人的条件下成立
② 如果属性X与Y有m:1的联系时,则只存在函数 依赖X→Y。例如, Eno与Eage , Dname之间均为 m:1联系,所以有Eno → Eage , Eno → Dname 。 ③ 如果属性X与Y有m:n的联系时,则X与Y之间不 存在任何函数依赖关系。例如,一个员工可以参 与多个工程,一个工程可以为多个员工参与,所 以Eno与Pno之间不存在函数依赖关系。 5.函数依赖可以保证关系分解的无损连接性
图3.3 不到第二范式的关系示意
43
关系规范化
44
关系规范化
3、第三范式(3NF)
如果一个关系达到第二范式且不存在非主属性
对候选关键字的传递函数依赖,则称为达到第三范
式,简称3NF。
3NF还可表述为:如果一个关系达到第二范式且
不存在非主属性对非主属性的完全函数依赖,则称
之达到第三范式。
45
关系规范化
属性删除而被删除的现象。
34
关系规范化
操作异常与数据冗余通常是相伴而生的,
因此可通过检查数据冗余来发现是否存在操作
异常的可能。
35
关系规范化
关系规范化:将一个低一级范式的关系模 式,通过模式分解可以转换为若干个高一级范
式的关系模式集合,这种过程就叫关系模式的
规范化。
36
关系规范化
二、范式
范式来自英文 Normal form,简称NF,是符合 某个级别的关系模式的集合。
任何K (K<N)个属性的属性பைடு நூலகம்都不是关键字
则该关系全部属性构成的属性组是其关键字。
31
候选关键字与主属性
二、主属性
在一个关系中,如一个属性是构成某一个候
选关键字的属性集中的一个属性,则称它为主属
性。 如一个属性不是构成该关系任何一个候选关 键字的属性集的成员,就称它为非主属性。
32
关系规范化
域:是一组具有相同数据类型的值的集合。 笛卡尔积:各域各取一值的完全组合称为这些域 的笛卡尔积。 域D1和域D2的笛卡尔积是一个表,其属性为原 D1域和D2域所有属性的集合,其行数为D1域值的个 数和D2域值个数的乘积,每一行由D1和D2各取一值
3 组成,所有各行均不重复。
关系数据库基本概念
如果给定一组域D1,D2,…D n 则D1 ╳ D2 ╳…….╳Dn ={(d1,d2,…dn)︱di∈Di,I=1,2,…n} 其中每一个元素(d1,d2,…dn)叫做一个N元元组, 或简称为元组。 元素中的每一个值叫作元组的一个分量,也是它 所对应实体或联系的那个属性的一个值。
关系数据库的值也称为关系数据库(动态), 是这些关系模式在某一时刻对应的关系的集合 。
15
15
关系数据库基本概念
数据库中的关系应具备如下性质:
每一列中的分量来自于同一个域,是同一类型的数据。
不同的列可来自于同一个域,每一列称为属性,要给 予不同的属性名。 列的顺序的改变不改变关系。 在一个关系中任意两个元组不能全同。 元组次序可以任意交换而不改变关系。 每一分量必须是不可再分的数据项,即具有原子性。
16
R
关系数据库基本概念
现实世界 信息世界 事物类 事物 性质 实体集合 实体 属性 关系 关系 元组 域(属 性) 表 计算机 世界
二维表 数据库 文件 行 列 记录 数据项
不同领域不同术语对应关系
17
函数依赖
一、函数依赖概念 关系理论中函数依赖是指关系中属性间的对应 关系。
如关系中对于属性(组)X的每一个值,属性 (组)Y只有唯一的值与之对应,则称Y函数依赖 于X,或称X函数决定Y。记作X→Y ,否则,如果X 不能函数决定Y,记作 X→Y 。若X→Y,Y→X,则记 作X Y。
7
例如,我们给出三个域: D1=导师集合 SUPERVISOR={张清玫,刘逸} D2=专业集合 SPECIALITY={计算机专业,信息专业} D3=研究生集合 POSTGRADUATE={李勇,刘晨,王名} 则 D1,D2,D3的笛卡尔积为: D1×D2×D3 ={(张清玫,计算机专业,李勇),(张清玫,计算机专业,刘晨), (张清玫,计算机专业,王名),(张清玫,信息专业,李勇), (张清玫,信息专业,刘晨), (张清玫,信息专业,王名), (刘逸,计算机专业,李勇), (刘逸,计算机专业,刘晨), (刘逸,计算机专业,王名), (刘逸,信息专业,李勇), (刘逸,信息专业,刘晨), (刘逸,信息专业,王名) }
关系数据库模式中所有关系模式的具体关系的
集合称关系数据库。
关系数据库模式是数据的型的表示,而关系数
据库则是数据的值的表示。
14
关系模式是型,是静态的、稳定的
关系是关系模式的值,是动态的、随时间不断 变化的。 关系数据库模式(静态),是对关系数据库的 描述,它包括若干域的定义以及在这些域上定 义的若干关系模式。
数据库原理与技术 (第二版)
程学先 陈永辉 程传慧 郑秋华
曾 玲 杨晓艳
主讲:武汉大学 靳毅
EMAIL:Benjieming2002@163.COM
0
本 章 要 点
基 本 概 念 函 数 依 赖 候选关键字与主属性 关系规范化 退
2
出
基本概念
关系数据库:按关系数据模型组织的数据库。
关系模式:关系名及其属性序列,也称为关系的型 R(D1,D2,…,Dn)
9
关系数据库基本概念
多个属性构成的关系是这些属性所属域的笛
卡尔积的子集。一般说来只有其真子集才有意义。
图3.1的C关系中只有一半元组是有意义的。
10
关系数据库基本概念
图3.1 关系的笛卡尔积
11
12
13
关系数据库基本概念
所有关系模式的集合(包括关系名,属性名, 关键字,完整性约束和安全性要求)称为关系数据 库模式,它表示一个关系数据库的逻辑结构。
R
41
关系规范化
关系从1NF优化到2NF的方法是:
将有关非主属性与其完全函数依赖的那些
部分主属性分解建立新的关系。
42
在如图3.3 示意图 中,关系即使达到 第一范式,也未达 到第二范式。
分解的方法是:将 p3、p4、p6等函数 依赖于k3的非主属 性抽出来,加上k3 组合成新的关系, k3是其关键字;剩 余非主属性、主属 性包括k3维持原有 各关系不变。
候选关键字与主属性
一、候选关键字 在关系R中如记录完全函数依赖于属性(组)X,则 称X为关系R中的一个候选关键字。它具有如下性质: 在一个关系中,候选关键字可以有多个。 任何两个候选关键字值都是不相同的,因为若有
两条记录的候选关键字值相同,它和记录的关系就不 是决定因素。
29
候选关键字与主属性