您好,欢迎访问一九零五行业门户网

博伊斯-科德范式 (BCNF)

bcnf 是第三范式 (3nf) 的扩展,比 3nf 稍强。
关系 r 属于 bcnf,如果 p -> q 是平凡的函数依赖,p 是 r 的超键。
如果关系在 bcnf 中,则意味着基于函数依赖的冗余已被删除,但一些冗余仍然存在。
让我们看一个例子 -
地面
begin_time
end_time
封装
g01
07:00
09:00
金色
g01
10:00
12:00
金色
g01
10:30
11:00
青铜
g02
10:15
11:15
银色
g02
08:00
09:00
银色
上述关系在 1nf、2nf、3nf 中,但不在 bcnf 中。原因如下:
功能依赖 {package->ground}
它具有决定性属性 package on which ground取决于既不是候选键也不是候选键的超集。
封装
地面
金色
g01
银色
g02
青铜
g01
地面
begin_time
end_time
g01
07:00
09:00
g01
10:00
12:00
g01
10:30
11:00
g02
10:15
11:15
g02
08:00
09:00
现在以上表格采用 bcnf 格式。
表的候选键是 package 和 ground
的候选键表是 {ground, begin_time} 和 {ground, end_time}
由于我们在关系。
以上就是博伊斯-科德范式 (bcnf)的详细内容。
其它类似信息

推荐信息