在关系数据库设计中,例如,有架构S(银行家,bname,客户)和功能依赖(FD)
banker-> BNAME 顾客,bname->银行家
BCNF中的模式S?或者它应该是: (银行家,bname)和(客户,银行家)
答案 0 :(得分:1)
我不认为'S'在BCNF。这是Chris Date对BCNF的非正式定义。
当且仅当唯一的决定因素是候选者时,relvar才在BCNF中 键。 (数据库系统简介,第7版,第367页)
术语 determinant 表示功能依赖的左侧。如果存在功能依赖,其左侧不是候选键,则该关系不在BCNF中。
让我们用传统的符号重写你的例子。
R{ABC}
A->B
BC->A
有两个候选键:AC和BC。 A-> B的左侧不是候选键。所以R不在BCNF。
或者它应该是:(银行家,bname)和(客户,银行家)
没有。您的功能依赖性非常清楚地表明客户不决定银行家。
答案 1 :(得分:0)
我认为应该是(银行家,bname)和(客户,银行家)。看起来更像是与我的外键关系。