一、关系模式设计的问题
1.数据冗余问题
在一张表中,有些数据会重复多次,造成存储上的浪费空间.
2.数据更新问题
如果要改变数据里面的某个值,还要去改变它的其他值,使得其操作变的更加复杂
3.数据插入问题
如果是刚建成的内容,而数据里面的主键没有值,使得数据无法进行插入
4.数据删除问题
只删除某个别的值,但是会删掉其他的值,导致操作异常
函数依赖
二、基本概念
公式:Y=f(X)
例如:省=f(城市),城市相当于自变量X,而省相当于因变量Y。
对于学生关系模式Student(Sno,Sname,Sdept,Sage)有函数依赖关系
Sno->Sname Sno->Sdept Sno->Sage
对于学生选课关系模式SC(Sno,Cno,Grade)有函数依赖关系
(Sno,Cno)->Grade
三、一些术语和符号
(1)如果X->Y,但Y不包含于X,称X->Y是平凡依赖的函数关系,反之为不平凡的函数依赖
(2)如果Y不函数依赖于X,则称X-\>Y
(3)如果X->Y,则称X为决定因子
(4)如果X->Y,并且Y->X,则记为x<->Y
(5)如果X->Y,对于X里面的任何一个真子集不函数依赖于Y,那么称Y为完全函数依赖,反之为部分函数依赖
四、函数依赖关系的推理规则
1.Armstrong公式
(1)自反律
若Y包含于X包含于U,则(Y,X)->U
(2)增广律
若X->Y在R上成立,并且Z包含于U,则XZ->YZ在R上成立
(3)传递律
若X->Y和Y->Z在R上成立,则有X->Z也在R上成立
2.Armstrong公理推论
(1)合并规则
若X->Y和Y->Z在R上成立,则X->YZ在R上成立
(2)分解规则
若X->Y并且Z包含于Y在R上成立,则X->Z在R上成立
(3)伪传递规则
若X->Y和YW->Z在R上成立,则XW->Z在R上成立
(4)复合规则
若X->Y和W->Z在R上成立,则XW->YZ在R上成立