糟糕的数据库逻辑设计
1. 信息冗余
2. 数据不一致风险
3. 增删改异常
问题原因:
模式中存在不合适的数据依赖
解决方案:
模式分解:用规范化理论改造关系模式,消除其中不合适的数据依赖
数据依赖
分类
1. 函数依赖:
2. 多值依赖:
3. 连接依赖:
...
数据依赖对关系模式的影响
1. 信息冗余
2. 数据不一致风险
3. 增删改异常
关系模式的简化表示
R<U, F>
其中:
R是关系模式名
U是属性集合
F是函数依赖集合
函数依赖
概念
关系模式:R(U),U是属性集
属性集X,Y都是U的子集
关系模式的一个实例:关系r
若:在关系r中没有任何两个元祖在X上取值相同,Y上取值不同
则:X函数确定Y,Y函数依赖X,X->Y
要求
关系模式R的任何实例r在任何时刻都要满足
如何确定函数依赖?
1. 函数依赖属于语义范畴的概念,只能根据数