它不满足2-NF,因为存在-> b的部分依赖关系。上述函数依赖关系只依赖于b而不依赖于s,因此是部分依赖关系。它不满足3-NF,因为o -> r表示一个非素属性依赖于另一个非素属性。BCNF不满意,因为3-NF不满意。最后,如果我要修改该表,直到它在BCNF中,将关系R拆分为: R1(b, e, s, r, o, n) with b, s -> e, r, o, n 和 R2(b, t, g) with b ->t and b -> g
给定具有属性集R和依赖关系集F的关系方案:函数依赖B -> D违反了BCNF,因为B不是超级密钥,所以我用以下算法将关系分解成3种关系,从而在BCNF中转换了关系:
Given a schema R.Repeat until all relations are in BCNF.Pick any R' having a