BC范式

更新时间:2024-05-21 14:19

BC范式,是指对于关系模式R,若 R为第一范式,且每个属性都不部分依赖于候选键也不传递依赖于候选键,则R称之为BC范式。

函数简介

解释一下:对于关系模式R,若 R为第一范式,且每个属性都不部分依赖于候选键也不传递依赖于候选键,那么称R是BC范式。

相对于第三范式,BC范式的要求更加严格。第三范式只是要求R为第二范式且非键属性不传递依赖于R的候选键,而BC范式则是对R的每个属性都做要求。

在关系模式STJ(S,T,J)中,S表示学生,T表示教师,J表示课程。

每一教师只教一门课。每门课由一名教师教,某一学生选定某门课,就确定了一个固定的教师。某个学生选修某个教师的课就确定了所选课的名称 : (S,J)→T,(S,T)→J,T→J

因为没有任何非主属性对码传递依赖或部分依赖,故STJ是3NF,但T是决定因素而T不包含码,故STJ不是BCNF关系。

关系模式的定义可以得到如下结论,若R属于BCNF,则R有:

1.所有非主属性对每一个码都是完全函数依赖

2.所有的主属性对每一个不包含它的码,也是完全函数依赖。

3.没有任何属性完全函数依赖于非码的任何一组属性。

由于R∈BCNF,按定义排除了任何属性对码的传递依赖与部分依赖,所以R∈3NF。但是若R∈3NF,则R未必属于BCNF。

免责声明
隐私政策
用户协议
目录 22
0{{catalogNumber[index]}}. {{item.title}}
{{item.title}}