数据库六大范式详解

候选码
某一属性的值能唯一标识一个元组,而其子集不能,则称该属性组为候选码。若一个关系中有多个候选码,则选定其中一个为主码。
例如下图所示的学生表中,学号和姓名都可以唯一标识一个元组,故该表的候选码为学号和姓名,我们可以随便选定其中一个作为主码

学号姓名年龄性别
001张三20
002李四20
003王五20

主属性
所有候选码的属性称为主属性。
不包含在任何候选码中的属性称为非主属性或非码属性
在上面的学生表中,学号和姓名就是该关系的主属性,年龄和性别就是非主属性。

函数依赖
在这里插入图片描述
设R为任一给定的关系,如果对于R中属性X的每一个值,R中属性Y只有唯一值与之对应,则称X函数决定Y或Y函数依赖于X,记作X→Y。其中X称为决定因素。
通俗一点,就是给定一个X都有唯一的Y。可以理解为函数 y = f(x);对于任意的x都有一个y,且y的取值有x决定。
例如:学号可以唯一确定一个学生的年龄、姓名等信息。

完全函数依赖
如果存在X属性组(注意是组,说明是主键)决定唯一的Y,但X中的任意子集却不能决定唯一的Y,则Y完全依赖于X.
例如:学生的成绩由学生与课程共同决定。所以成绩完全依赖于学生和课程

部分函数依赖
与完全函数依赖相反:如果存在X属性组(注意是组,说明是联合主键)决定唯一的Y,且X中的任一子集都能决定唯一的Y,则Y部分依赖于X。
例如:在没有同名的情况下,学号与姓名都可以决定一个学生的年龄、性别等信息。

传递函数依赖
设R为任一给定关系,X Y Z 为其不同的属性子集,若X→Y且Y→Z,则有X→Z,称为Z传递函数依赖于X
例如:学号可以唯一确定一个系部,且系部可以唯一确定一个系主任。

什么是范式
范式来自英文Normal form,简称NF。要想设计一个好的关系,必须使关系满足一定的约束条件,此约束已经形成了规范,这就是我们俗称的范式。范式分成几个等级,一级比一级要求更严格。

范式的分类
第一范式(1NF)
强调属性的原子性,即属性不可再分。
在这里插入图片描述
第二范式(2NF)
第二范式必须满足第一范式
第二范式是指每个关系必须有一个(有且仅有一个)数据项作为主键,其他数据项与主键一一对应,即其他数据项完全依赖于主键。由此可知单主属性的关系均属于第二范式。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值