数据库中范式的简单理解

数据库中范式的简单理解

第一范式:每一数据项是不可再分的。不能是数组或者集合


第二范式:满足第一范式,同时,所有非主属性依赖于全部候选键

例如:(A、B)为主属性,如果非主属性C可以由B推出,而不需要A,这个时候,C就不完全依赖去所有的主属性(仅仅是部分依赖于B)。所以不满足第二范式


第三范式:满足第二范式,同时所有非主属性间不存在传递依赖。比如(A、B)是主属性,C、D是非主属性,但是C可以退出D,这个时候非主属性存在了传递依赖,就不满足第三范式了



BC范式:是第三范式的纠正,满足第三范式,同时所有属性间不存在传递依赖(相对于第三范式,就是主属性间也不能存在传递依赖)
第四范式:满足第BC范式,同时属性间不允许多指依赖:比如一个关系中有用户名和手机号,但是一个用户名对应多个手机号。这个时候就不满足第四范式
 员工(工号,姓名,性别,出生日期,电话)这个就满足BC范式,但是,一个员工存在多个电话,这个时候,怎么修改成第四范式呢
员工(工号,姓名,性别,出生日期)
员工电话(工号,电话)

猜你喜欢

转载自blog.csdn.net/handsome2013/article/details/80324897