关系数据库设计易犯错误
信息重复;
不能表示某些信息。
模式分解
令R为一关系模式,F为R上函数依赖集。R1和R2为R的分解。该分解为R的无损连接分解只要F+中至少有如下函数依赖中的一个:
R1 ∩ R2 → R1
R1 ∩ R2 → R2
BCNF
result := {R};
done := false;
计算F+;
while(not done)do
if(result中存在模式Ri不属于BCNF)
then begin
令α → β是Ri上的一个非平凡函数依赖,满足α → Ri不在F+中且α∩β=空;
result:=(result-Ri)∪(Ri-β)∪(α,β);
end
else done:=true;
第三范式
具有函数依赖集F的关系模式R属于3NF,只要F+中所有形如α → β的函数依赖,至少有以下之一成立:
α → β是平凡函数依赖。
α是R的超码。β-α中的每个属性A都包含在R的候选码中。
本文探讨了关系数据库设计中常见的错误,如信息重复及无法表示某些信息等问题,并介绍了模式分解、BCNF(Boyce-Codd范式)及第三范式等概念,帮助读者理解如何正确地进行数据库设计。

被折叠的 条评论
为什么被折叠?



