软考学习笔记

学习资料:

数据库关系模式的范式总结_关系模式范式-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的逻辑蕴涵。

相关推荐
山甫aa30 分钟前
锁一篇搞定:乐观锁、悲观锁、CAS、数据库锁与分布式锁【从零开始的 Web 后端学习】
java·数据库·分布式·后端·学习·web
m0_564876841 小时前
CMake学习
学习
只愿云淡风清1 小时前
正则表达式学习笔记 02:基础语法
笔记·学习·正则表达式
wangqiaowq4 小时前
Ontology 学习 二
学习
该学习了咕咕11 小时前
顶刊论文学习笔记
学习
希和202712 小时前
考研英语阅读词汇笔记|城市野径、抄近道步道(非正式小路)
笔记·考研
Linux-lucky12 小时前
45-Linux学习之旅之防火墙与WEB加固
linux·前端·网络·学习·ubuntu
li星野12 小时前
【学习记录】k-Wave 时间步长、CFL 稳定性与参数实验全解析
学习
一个人旅程~15 小时前
关于imac27inch因改短用户名导致混合硬盘和系统崩溃的问题分析与故障解决
经验分享·笔记·macos·新浪微博
心祭丫丫15 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习