软考学习笔记

学习资料:

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

相关推荐
青衫码上行6 分钟前
【Java Web学习 | 第十篇】JavaScript(4) 对象
java·开发语言·前端·javascript·学习
大邳草民15 分钟前
深入理解 Python 的属性化方法
开发语言·笔记·python
degen_19 分钟前
BDS 执行平台相关动作
c语言·笔记·bios
寅双木21 分钟前
自己配一台电脑——CPU的命名方式
笔记·core·intel·cpu命名方式·酷睿·锐龙·ryzen
淮北4941 小时前
linux系统学习(10.shell基础)
linux·运维·服务器·学习
zhangfeng11331 小时前
学习文本大模型的学习路径,各种大模型对比和分类以及各个大模型对硬件的要求,开源大模型有哪些
学习·分类·开源
青衫码上行1 小时前
【Java Web学习 | 第九篇】JavaScript(3) 数组+函数
java·开发语言·前端·javascript·学习
谅望者3 小时前
数据分析笔记04:抽样方法与抽样分布
数据库·笔记·数据挖掘·数据分析
峥嵘life3 小时前
Android16 更新fastboot版本解决fastbootd模式识别不到设备问题
android·学习
HalvmånEver3 小时前
Linux:基础开发工具(一)
linux·运维·服务器·开发语言·学习·进阶学习