《sqlserver数据库技术与应用教学课件作者孔庆月9》由会员分享,可在线阅读,更多相关《sqlserver数据库技术与应用教学课件作者孔庆月9(11页珍藏版)》请在金锄头文库上搜索。
1、任务七 电子商务安全技术,2,任务1 理解函数依赖的概念,任务2 理解范式的概念,返回,任务1 理解函数依赖的概念,(1)函数依赖。设R(U)是一个关系模式,U 是R 的属性集合,X 和Y 是U 的子集;对于R(U)的任意一个可能的关系r,如果r 中不存在两个元组,它们在X 上的属性值相同,而在Y 上的属性值不同,则称“X 函数确定Y”或“Y 函数依赖于X”,记做XY。 (2)完全函数依赖。在关系模式R(U)中,如果XY,并且对于X 的任何一个真子集X ,都有X Y,则称Y 完全函数依赖于X,记做XfY。 (3)部分函数依赖。在关系模式R(U)中,若XY,但Y 不完全函数依赖于X,称Y部分函数
2、依赖于X,记做XpY。,下一页,返回,任务1 理解函数依赖的概念,(4)传递函数依赖。在关系模式R(U)中,如果XY,Y X,Y X,YZ,则称Z传递函数依赖于X。 在表9.2 中,学号列和课程号列的组合为主关键字,当知道学号和课程号时,就能唯一地确定学生的成绩,成绩既依赖于学号,又依赖于课程号,它完全函数依赖于主关键字(学号、课程号)。如果知道学号,就可以确定出姓名,所以姓名只依赖于学号,而与课程号无关,它只依赖于主关键字的一部分,则姓名部分函数依赖于主关键字(学号、课程号)。 在表9.3 中,课程号列为主键,专业列函数依赖于专业号列,而专业号列又函数依赖于主键列,所以专业列传递函数依赖于主
3、键列。,上一页,返回,任务2 理解范式的概念,根据一个关系满足数据依赖的程度不同,可规范化为第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。从理论研究上还有其他范式,但实际意义不大,在此不做讨论。 (1)第一范式(1NF)。 如果关系R 的所有属性均为简单属性,即每个属性都是不可再分的,则称R 满足第一范式。 (2)第二范式(2NF)。 如果关系R 满足第一范式,且每一个非主属性完全函数依赖于主键,则称R 满足第二范式。 (3)第三范式(3NF)。 如果关系R 满足第二范式,且每一个非主属性既不部分函数依赖于主键,也不传递函数依赖于主键,则称R 满足第三范式。,下一页,返回,任务2
4、 理解范式的概念,例如,表9.1 满足第二范式,而表9.2 不满足第二范式。因为在表9.1 中,学号列为主键,其他各列均完全函数依赖于该列,也不存在传递依赖,所以它满足第二范式和第三范式的要求;在表9.2 中,学号列和课程号列的组合为主键,姓名列并不完全函数依赖于主键。删除姓名列后,成为表9.4 所示的成绩表2,消除了部分依赖,也不存在传递依赖,所以它满足了第二范式和第三范式的要求;表9.3 满足第二范式而不满足第三范式,因为在该表中,课程号列为主键,专业列传递函数依赖于主键。删除专业列后,成为表9.5 所示的课程表2,它满足了第三范式的要求。,上一页,返回,谢谢观赏,表9.1 学生表(2NF),返回,表9.2 成绩表(1NF),返回,表9.3 课程表,返回,表9.4 成绩表2(2NF),返回,表9.5 课程表2(3NF),返回,