You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

分解后的关系能否与原关系一致?BCNF转换问题咨询

BCNF分解问题解答

首先明确BCNF的核心判定标准:一个关系模式属于BCNF,当且仅当每个非平凡函数依赖的左部都是该关系的超键。

先分析原关系R(A,C,D)是否满足BCNF:

  • 对于函数依赖AC→D:AC是主键,属于超键,符合BCNF要求;
  • 对于函数依赖D→C:计算D的闭包D⁺={D,C},无法推导出属性A,因此D不是超键——这直接违反了BCNF规则,也就是说原关系R本身并不满足BCNF。

BCNF分解的硬性要求是:所有分解后的组件关系必须都满足BCNF。你提到的分解结果里包含了原关系R(A,C,D),但它本身不符合BCNF,所以这种分解是不合法的。

正确的BCNF分解应该针对违反规则的D→C进行拆分:

  • 拆分出R₁(D,C):主键为D,函数依赖D→C满足BCNF;
  • 拆分出R₂(A,D):主键为AD(因为A无法单独决定D,D也无法单独决定A),该关系不存在非平凡函数依赖,自然满足BCNF。

综上,BCNF分解的组件关系不能与原关系一致,因为原关系本身不满足BCNF,不符合分解后组件必须全部满足BCNF的要求。

内容的提问来源于stack exchange,提问作者Erbol Kulantaev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 12:00:02