函数依赖和范式
时 间:2019-04-12 10:02:17
作 者:缪炜 ID:24010 城市:江阴
摘 要:函数依赖和范式
正 文:
1、函数依赖概念:相当于数学中的函数,U是属性全集,x和y是U上的子集,x对应唯一确定的y,即x->y(y依赖于x)。
2、完全依赖和不完全依赖:U是属性全集,x和y是U上的子集,x1是x的真子集,如果x->y,且x1不能确定y,则是完全函数依赖,反之x1->y,则是不完全函数依赖。
3、传递依赖:U是属性全集,x、y和z是U上的子集,x->y(但是y不能确定x),y->z,则x->z。
二、范式
作用与背景:消除关系模式的数据冗余,解决删除和插入操作的异常。从而为不同程度的规范化设立不同的标准。
1NF:属性不能再拆分。举一个反例,关系模式R(身份,身体状况),明显身份可以拆分为姓名,编号等,所以不是第一范式。
2NF:非主属性完全依赖于码。举一个反例,关系模式R(姓名,学号,班级编号,班级名),满足1NF,候选码为学号和班级编号,(学号,班级编号)->姓名,(学号,班级编号)->班级名,但是学号->姓名,班级编号->班级名,所以不是第二范式。(通过完全依赖概念得出)
3NF:非主属性不传递依赖于码。举一个反例,关系模式(姓名,学号,班级,班主任),满足2NF,,主键是学号,但是学号->班级,班级->班主任,得出学号->班主任,所以不是第三范式。(通过传递依赖概念得出)
BCNF:消除主属性对码的部分依赖和传递依赖。反例不好举出,凑一个吧,满足3NF,关系模式(姓名,学号,学科号,成绩),假设名字没有重复,得出依赖姓名->学号,学号->姓名,(学号,学科号)->成绩,(姓名,学科号)->成绩,可以看出主属性对码的部分依赖,达不到BCNF。
总结:一般达到3NF可在市场流通。
4NF:满足BCNF,消除“多对多”的关系模式。
如:“多对多”模式

可以看出学号,姓名,课程编号,课程名称重复,数据冗余,可以化为“一对多”的模式,从而实现4NF。


学生信息表(左)和选课表(右)(一对多)

课程表(左)
Access软件网QQ交流群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)
- 仓库管理实战课程(4)-建表操作(03.22)
- 仓库管理实战课程(3)-需求设计说...(03.19)
- 仓库管理实战课程(2)-软件背景和...(03.18)
- 仓库管理实战课程(1)-讲师介绍(03.16)
- 统计当月之前(不含当月)的记录数怎...(03.11)