DataBase魏英tutor_wei@hotmail.com7952616第五章关系的规范化教学内容理解关系规范化的必要性掌握函数依赖的有关概念掌握1NF,2NF,3NF,BCNF和4NF的定义掌握关系模式的分解方法教学重点关系模式的分解方法教学难点关系模式的范式DataBase魏英tutor_wei@hotmail.com7952616关系规范化一个工资报表的实例工程号工程名称职工号姓名职务小时工资率工时实发工资A1花园大厦1001齐光明工程师65138451002李思岐技术员60169601004葛宇洪律师60191140小计2945A2立交桥1001齐光明工程师65159751003鞠明亮工人5517935小计1910A3临江饭店1002李思岐技术员601810801004葛宇洪律师6014840小计1920总计6775DataBase魏英tutor_wei@hotmail.com7952616关系规范化按照工资报表设计一个表工程号工程名称职工号姓名职务小时工资率工时实发工资A1花园大厦1001齐光明工程师65138451002李思岐技术员60169601004葛宇洪律师60191140A2立交桥1001齐光明工程师65159751003鞠明亮工人5517935A3临江饭店1002李思岐技术员601810801004葛宇洪律师6014840工程号工程名称职工号姓名职务小时工资率工时A1花园大厦1001齐光明工程师6513A1花园大厦1002李思岐技术员6016A1花园大厦1004葛宇洪律师6019A2立交桥1001齐光明工程师6515A2立交桥1003鞠明亮工人5517A3临江饭店1002李思岐技术员6018A3临江饭店1004葛宇洪律师6014设计一个关系模式R(工程号,工程名称,职工号,姓名,职务,小时工资率,工时)DataBase魏英tutor_wei@hotmail.com7952616关系规范化典型问题数据冗余:如果一个职工参与多个工程项目,那么这个职工的职工号,姓名,职务和小时工资率就要重复几次存储。操作异常修改异常:一个职工参与了多个工程项目,如果其职务发生变化,就必须修改多个元组,否则就会产生数据不一致插入异常:一个新来的职工尚未参与任何工程项目,那么要将其职工号,姓名,职务和小时工资率存储到关系中时,在工程号和工程名称属性上就没有值(空值)删除异常:如果一个职工只参与一个工程项目,要取消其任务时,将同时删除其职工号,姓名,职务和小时工资信息DataBase魏英tutor_wei@hotmail.com7952616关系规范化改进后的关系模式工程号工程名称A1花园大厦A2立交桥A3临江饭店职工号姓名职务小时工资率1001齐光明工程师651002李思岐技术员601003鞠明亮工人551004葛宇洪律师60工程(工程号,工程名称)职工(职工号,姓名,职务,小时工资率)工程号职工号工时A1100113A1100216A1100419A2100115A2100317A3100218A3100414报酬(工程号,职工号,工时)DataBase魏英tutor_wei@hotmail.com7952616关系规范化关系规范化是从微观角度研究关系模式中属性与属性之间的函数依赖性,判断关系模式中设计的合理性,解决数据库设计的优化问题规范化是通过一组不同级别的范式判定关系规范化的程度,确认产生数据异常的原因,并通过关系模式的分解方法,消除数据异常规范化设计理论主要包括三方面内容:数据依赖,范式和模式设计方法DataBase魏英tutor_wei@hotmail.com7952616函数依赖在数据依赖中,函数依赖(FunctionalDependency)是最基本、最重要的一种依赖定义:设有关系模式R(U),U是属性集合,X和Y是U的子集,对于R(U)的任意一个可能的关系r,如果r中不存在两个元组t和s,使得t[X]=s[X]而t[Y]≠s[Y],则称属性集X函数决定属性集Y,或称属性集Y函数依赖属性集X,记为X→YDataBase魏英tutor_wei@hotmail.com7952616函数依赖例5.1:学生关系模式为学生(学号,姓名,性别,系名称,系地址)学号姓名性别系名称系地址101张三男计算机C102李四男计算机C103王五女计算机C104赵六女经管B105张三女理学A学生关系的FD集为:FD={学号→姓名,学号→性别,学号→系名称,学号→系地址系名称→系地址}也可记为:学号→姓名,性别,系名称,系地址系名称→系地址DataBase魏英tutor_wei@hotmail.com7952616函数依赖函数依赖是关系模式R上属性之间需要满足的约束条件,属于语义范畴的概念,只能根据语义来确定若X→Y且Y→X,则记为XY例:设有关系模式R(A,B,C,D),在R的关系中,属性值...