举例: ===== 将有关学生简历、选课等数据设计成一关系模式student 表示为:
student(sno,sname,age,sex,class,department,cno,cname,score,grade) ----------------------------------------------------------------- 该关系模式的每一属性对应的域为简单域,符合第一范式 该关系模式满足函数依赖集
F={sno-> sname,sno-> age,sno-> sex,sno-> class,sno-> department class-> departmet (班级决定系)
cno-> cname,cno-> score(课程号决定课程名、学分)
sno,cno-> grade(学号和课程号决定成绩) }
下面将低级范式的关系模式转换成若干个高一级范式的关系模式集合
student1(sno,sname,age,sex,class,department) --------------------------------------------
course(cno,cname,score) -------------------------
sc(sno,cno,grade) ----------------- 非主属性对码完全依赖,均为2NF
分析模式student1,存在sno-> class ,class-/-> sno,class-> department 所以存在department(系)对sno(学号)传递依赖,所以关系模式student1不是第三范式 student1分解为:
student2(sno,sname,age,sex,class) ---------------------------------
class(class,department) ----------------------- 所以关系模式student 可分解成 4个3NF的关系模式student2 ,class ,course,sc