资源描述
数 据 库 系 统 概 论 Introduction to Database Systems Database System 主讲人:王岩 河南理工大学 第六章 关系的规范化理论 知 识 点 模式设计中存的问题 1 函数依赖 2 第一范式和第二范式 3 第三范式 4 BC范式 5 模式分解 6 例例:在关系模式在关系模式STJ(S,T,J)中,中,S表示学生,表示学生,T T表示教师,表示教师,J J表示表示课程。分析存在的函数依赖课程。分析存在的函数依赖:6.5 BC范式 假设每一教师只教一门课.每门课由若干教师教,某一学生选定某门课,就确定了一个固定的教师。某个学生选修某个教师的课就确定了所选课的名称于是有:S J T S T J (S,J)T,(S,T)J,TJ 该模式存在的问题:该模式存在的问题:6.5 BC范式 如果某个教师开设了某门课程,但尚未有学生选修,则有关信息也无法存入数据库中。1 插入异常 如果选修过某门课程的学生全部毕业了,在删除这些学生元组的同时,相应教师开设该门课程的信息也同时丢掉了。2 删除异常 虽然一个教师只教一门课,但每个选修该教师该门课程的学生元组都要记录这一信息。3 数据冗余度大 某个教师开设的某门课程改名后,所有选修了该教师该门课程的学生元组都要进行相应修改。4 修改复杂 定义6.8:设关系模式R1NF,如果对于R的每个函数依赖XY,若Y不属于X,则X必含有候选码,那么RBCNF。由定义可得到如下结论:6.5 BC范式 所有的主属性对每一个不包含它的候选键,也是完全函数依赖 2 2 所有非主属性对每一个候选键都是完全函数依赖 1 1 没有任何属性完全函数依赖于非候选键的任何一组属性。3 3 例:例:假设有一个关系模式SJP(S,J,P),S是学生,J表示课程,P表示名次。每一个学生选修每门课的成绩有一定的名次,每门课程中每一名次只有一个学生,没有并列名次。由语义可以得出下面的函数依赖:(S,J)确定P,(J,P)确定S (S,J)确定P,(J,P)都是候选码,所以S,J,P都是主属性,所以它肯定是3NF的,又因为没有任何属性(不管主还是非主)对码的传递依赖和部分依赖。所以它还是BC范式。6.5 BC范式 1NF 消除非主属性对码的部分函数依赖 2NF 消除非主属性对码的传递函数依赖 3NF 消除主属性对码的部分和传递函数依 BCNF 消除非平凡且非函数依赖的多值依赖 4NF 消除决定属性集非码的非平凡函数依赖 6.5 BC范式 属于第三范式关系模式中存的问题。BC范式的概念。范式理论关系图。
展开阅读全文