gpt4 book ai didi

database-design - 无损分解与依赖保留

转载 作者:行者123 更新时间:2023-12-03 22:38:47 25 4
gpt4 key购买 nike

他们中的任何一个都暗示另一个吗?

我的逻辑是,如果保留所有依赖项,则不会丢失信息,同样,如果分解是无损的,则一定不会违反功能依赖项。

所以本质上,依赖保留是一种确保您的分解无损的方法。

我很难接受/拒绝它。那么这两者是相互保证的,还是有一种情况可以在没有另一个的情况下实现?

最佳答案

一般来说,这是两个独立的事情:您可以进行不保留依赖关系的无损分解,以及保留依赖关系但不是无损的分解。

所以,你的第一个问题的答案是 没有 ,它们都没有暗示另一个。

然而,这两个属性可以通过以下基本结果“连接”,这给出了一个充分的(即使不是必要的)条件来确定依赖保留分解是否也是无损的:

Let ρ = {R(Ti,Fi)} a decomposition of a relation schema R(T,F) that preserves the dependencies. If, for some j, Tj is a superkey of R(T,F), then the decomposition ρ is lossless.



实际上,这个性质应用于分解 3NF 关系的“合成”算法的最后一步:如果在前面的步骤中获得的模式都没有包含原始关系的超键,则添加一个新模式,该模式具有该关系的任何候选键原始关系。

这保证了算法产生的分解既无损又保留了依赖关系,而另一方面,众所周知,在 BCNF 中分解关系的“分析”算法在某些情况下会产生功能损失依赖关系。

关于database-design - 无损分解与依赖保留,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39464758/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com