函数依赖(概念):FD
范式分解(评估准则):
模式分解(工具):
函数依赖
- 如何衡量一个数据库好不好:准确 高效
- 如果一个数据库设计的不好的话的,会带来哪些问题 删除异常 数据冗余
- 为什么会导致出现上方的问题:数据依赖
- 数据依赖的分类:完全依赖,部分依赖,传递依赖和相应的定义
- Armstrong公理,能将定理推导出公理
- 在实际数据库设计中,函数依赖 是语义上的函数依赖 不是实际的穷举依赖
函数依赖的类型
-
平凡函数依赖:就是大家一眼能看出来的不用特殊说明
-
非平凡函数依赖: X->Y并且没有包含关系的函数依赖
-
完全函数依赖看下图
Armstrong公理系统
- 自反率
- 增广率
- 传递率
利用属性集闭包证明函数依赖
定义候选键:完全依赖
由于系主任和乘积是闭包的子集所以 结论成立
等价函数依赖集
覆盖
方法通过闭包.
最小覆盖
大数据班级有41个人 在保证正确性的情况下,谁的设计最精简 评委的分也就越高。
算法
c++代码实现
关系规范化之求最小函数依赖集(最小覆盖)__TFboy的博客-CSDN博客
关系模式中的范式
数据库在实际应用中在规范无损连接和函数依赖做平衡一直在平衡。
范式描述数据的规范化程度
三种范式的确点和相应的解决方法。
1NF
实体的完整性使插入变得困难不能插入 删除必须整条元组都删除 数据修改变得很复杂 数据冗余
2NF
对于1nf的弊端和解决方法 其实就是2NF的方法
2NF方法的特点
3NF特点
直接依赖于候选键没有什么传递的