函数依赖与多值依赖的嵌套列表范式
1 引言
在数据库设计与开发过程中,数据的正确结构或设计是至关重要的。数据库模式应满足某些条件,以确保数据库在处理上没有困难。这些条件被称为范式,为数据库设计者提供了明确的指导方针,以避免具有冗余问题和更新异常的不良设计。Codd在早期的工作中引入了这样的范式,而函数依赖(FDs)和多值依赖(MVDs)则是其中重要的两类完整性约束。
函数依赖和多值依赖会导致数据表示中的冗余和更新异常等问题。为了解决这些问题,提出了Boyce-Codd范式(BCNF)和第四范式(4NF)。然而,随着数据模型的发展,尤其是嵌套关系数据模型、实体-关系模型、支持嵌套列表的数据模型以及XML等高级数据模型的出现,经典数据库设计问题需要重新审视。因此,有必要引入一种新的范式,即嵌套列表范式(Nested List Normal Form, NLNF),以适应这些新的数据格式。
2 函数依赖和多值依赖
2.1 函数依赖(FDs)
函数依赖是指在关系数据库中,一个属性集(X)唯一确定另一个属性集(Y)。形式上,如果对于关系模式R中的每个元组t1和t2,若t1[X] = t2[X],则t1[Y] = t2[Y],那么称X函数决定Y,记作X → Y。
2.2 多值依赖(MVDs)
多值依赖是指在关系数据库中,一个属性集(X)决定另一个属性集(Y)的值集合,而不是单个值。形式上,如果对于关系模式R中的每个元组t1和t2,若t1[X] = t2[X],则存在元组t3和t4,使得t3[X] = t4[X] = t1[X],且t3[Y] = t1[Y],t4[Y] = t2[Y],那么称X多值决定
超级会员免费看
订阅专栏 解锁全文
1万+

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



