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

从关系R的函数依赖确定主键:我的推导为何出错?

你的推导错误分析
  • 核心错误:无依据替换函数依赖的左部
    你把BC->AD等价于AA->AD完全是错误的,这两个函数依赖没有任何等价关系。BC和AA(也就是单个属性A)是完全不同的属性集合,函数依赖的左部是特定的属性组合,不能随意替换,除非能通过已有的函数依赖推导出BC和A等价(显然这里做不到)。

  • 正确推导两个主键的过程
    主键的定义是:属性集的闭包能覆盖关系中的所有属性(即闭包等于{A,B,C,D})。

    1. 计算A的闭包:根据A->BCD,直接可得A+ = {A,B,C,D},所以A是主键。
    2. 计算BC的闭包:根据BC->AD,BC可以推导出A和D;再加上BC本身的B和C,以及D->B(但B已经存在),最终BC+ = {B,C,A,D},覆盖了所有属性,所以BC也是主键。
  • 你推导时的逻辑漏洞
    你错误地忽略了BC作为独立属性集的闭包能力,仅凭A是主键就否定了BC的主键资格,还无依据地替换了函数依赖的左部,这才导致结论错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 23:24:56