软考学习笔记

学习资料:

数据库关系模式的范式总结_关系模式范式-CSDN博客

【范式】五大范式所解决的问题及说明_天空_新浪博客 (sina.com.cn)


求函数依赖:

根据函数依赖求候选码_证明存在部分依赖属于候选码-CSDN博客

关系范式:

1NF:若关系模式R的每个关系r的属性值都是不可分的原子值,则称R是第一范式1NF (First Normal Form)的模式。

2NF:

1.对于FD W→A,若存在X⊆W有X→A成立,则称W→A是局部依赖(A局部依赖于W);否则称W→A是完全依赖。完全依赖也称为"左部不可约依赖"。

2.若A是关系模式R中候选键属性,则称A是R的主属性:否则称A是R的非主属性。

3.若关系模式R是1NF,且每个非主属性完全函数依赖于候选键,则称R是第二范式(2NF)的模式。若数据库模式中每个关系模式都是2NF,则称数据库模式为2NF的数据库模式。

3NF:

1.若x→Y, Y→A, 且Y-/->x和A⫋Y,则称X→A是传递依赖(A传递依赖于X)。

  1. 若关系模式R是1NF,且每个非主属性都不传递依赖于R的候选键,则称 R是第三范式(3NF)的模式。

3NF的目的是消除非主属性对键的传递函数依赖。

BCNF:

若关系模式R是1NF,且每个属性都不部分依赖也不传递依赖于R的候选键,则称R是 BCNF的模式。

4NF:

设关系R(X,Y,Z),其中X,Y,Z是成对的、不相交属性的集合。若存在非平凡多值依赖,则意味着对R中的每个属性 Ai(i=1,2,...,n)存在有函数依赖 X→Ai(X必包含键)。那么称R是第四范式的模式 。

也就是说,当一个表中的非主属性互相独立时(3NF),这些非主属性不应该有多值。若有多值就违反了第四范式。

5NF:

如果关系模式R中的每一个连接依赖均由R的候选码所隐含,则称此关系模式符合第五范式。

规范化的过程可概括如下:

(1)取原始的1NF关系投影,消去非主属性对键的部分函数依赖,从而产生一组2NF关系。

(2)取2NF关系的投影,消去非主属性对键的传递函数依赖,产生一组3NF关系。

(3)取这些3NF的投影,消去决定因素不是键的函数依赖。产生一组BCNF关系。

(4)取这些BCNF关系的投影,消去其中不是函数依赖的非平多值依赖,产生一组4NF关系。

(5)取4NF关系的投影,消除不是由候选码所蕴含的连接依赖,产生一组5NF关系。

逻辑蕴含

设F是关系模式R(U)中的一个函数依赖集合,X, Y是R的属性子集,如果从F中的函数依赖能够推导出X→Y ,则称F逻辑蕴涵X→Y, 或称X→Y是F的逻辑蕴涵。

相关推荐
浅念-几秒前
Linux 进程与操作系统
linux·运维·服务器·网络·数据结构·笔记·网络协议
计算机安禾1 分钟前
【数据结构与算法】第20篇:二叉树的链式存储与四种遍历(前序、中序、后序、层序)
c语言·开发语言·数据结构·c++·学习·算法·visual studio
m0_564876848 分钟前
提示词工程Zero-Shot、One-Shot、Few-Shot
人工智能·深度学习·学习
刘若里19 分钟前
【论文阅读】自适应稀疏自注意力——可直接用!
论文阅读·人工智能·笔记·深度学习·计算机视觉
滴_咕噜咕噜19 分钟前
WPF项目实战视频《五》(主要为项目实战-客户端)
笔记
老虎062726 分钟前
LeetCode热题100 刷题笔记(第六天)双指针 「 盛最多水的容器」
笔记·算法·leetcode
ZhiqianXia28 分钟前
Gem5 学习笔记(3) : 源代码鸟瞰
笔记·学习
南境十里·墨染春水1 小时前
C++笔记 继承关系中构造和析构顺序(面向对象)
开发语言·c++·笔记
热爱生活的猴子1 小时前
PyTorch导出ONNX报错(ShapeInferenceError)问题笔记(含dynamo=False作用解析)
人工智能·pytorch·笔记