重温数据库范式

 第一范式(1NF):数据库表中的字段都是单一属性的,不可再分。这个单一属性由基本类型构成,包括整型、实数、字符型、逻辑型、日期型等
第二范式(2NF):数据库表中不存在非关键字段对任一候选关键字段的部分函数依赖(部分函数依赖指的是存在组合关键字中的某些字段决定非关键字段的情况),也即所有非关键字段都完全依赖于任意一组候选关键字。 
  第三范式(3NF):在第二范式的基础上,数据表中如果不存在非关键字段对任一候选关键字段的传递函数依赖则符合第三范式。所谓传递函数依赖,指的是如果存在"A → B → C"的决定关系,则C传递函数依赖于A。因此,满足第三范式的数据库表应该不存在如下依赖关系: 

   关键字段 → 非关键字段x → 非关键字段y 
假定学生关系表为Student(学号, 姓名, 年龄, 所在学院, 学院地点, 学院电话),关键字为单一关键字"学号",因为存在如下决定关系: 

   (学号) → (姓名, 年龄, 所在学院, 学院地点, 学院电话) 

   这个数据库是符合2NF的,但是不符合3NF,因为存在如下决定关系: 

   (学号) → (所在学院) → (学院地点, 学院电话) 

   即存在非关键字段"学院地点"、"学院电话"对关键字段"学号"的传递函数依赖。 

猜你喜欢

转载自yelwen000.iteye.com/blog/1633470