第9次作业-知识点整理:关于函数依赖定义、函数依赖类型

发布时间 2023-11-15 20:45:33作者: 于伟123
这个作业属于哪个课程 https://edu.cnblogs.com/campus/uzz/cs3
这个作业要求在哪里 https://edu.cnblogs.com/campus/uzz/cs3/homework/13106
这个作业的目标 <第9次作业-知识点整理:关于函数依赖定义、函数依赖类型>

一、函数依赖的定义

函数依赖FD(Functional Dependency)是指关系中属性间的对应关系,是数据设计的核心部分。
设R(U)是一个属性集U上的关系模式,X和Y是U的子集。若对于R(U)的任意一个可能的关系r,r 中不可能存在两个元组在X上的属性值
相等, 而在Y上的属性值不等,则称“X函数确定Y”或“Y函数依赖于X”,记作X→Y

二、函数依赖的分类

函数依赖的分为完全函数依赖、部分函数依赖、传递函数依赖。

1、完全函数依赖

  • 设X,Y是关系R的两个属性集合,X’是X的真子集,存在X→Y,但对每一个X’都有X’!→Y,则称Y完全函数依赖于X。
    实例:(学号,课程号)→ 成绩。

2、部分函数依赖

  • 设X,Y是关系R的两个属性集合,存在X→Y,若X’是X的真子集,存在X’→Y,则称Y部分函数依赖于X。
    实例:假设不存在重名的情况,(学号,姓名)→ 性别,学号 →性别,所以“(学号,姓名)→ 性别”是部分函数依赖。

3、传递函数依赖

  • 设X,Y,Z是关系R中互不相同的属性集合,存在X→Y(Y !→X),且Y→Z,则称Z传递函数依赖于X。
    实例:关系S(学号,系名,系主任),学号 → 系名,系名 →系主任,并且系名无法确定学号,所以“学号 → 系主任”为传递函数依赖。

三、规范化

规范化的基本思想是逐步消除数据依赖中不合适的部分,使模式中的各关系模式达到某种程度的分离。
即“一事一地”的模式设计原则。让一个关系描述一个概念,一个实体或者实体间的一种联系。规范化实质上是概念的单一化

四、思维导图