数据依赖与冗余 --《数据库》

数据依赖与冗余

数据依赖是语义概念,是关于关系诸属性值之间的内在相关性陈述,它规定了关系模式的合法关系实例所必须满足的条件

数据依赖可以用于断言合法关系中的某些冗余

依赖和冗余都是密不可分的,承认某种数据依赖,我们就可以发现关系中的某些冗余,不承认数据之间的关系,也就没有理由认为某些信息是冗余的

冗余产生的原因和处理也总是联系在一起的

函数依赖

数据依赖与冗余 --《数据库》_第1张图片

真抽象。。。

从例子的角度来讲,说的是,在一个关系中,也就是一张数据库表的所有属性中,可以通过一个或者几个属性的值,确定出一个或者几个属性的值,就说前者函数确定后者,后者函数依赖于前者

  • 平凡的函数依赖

设X是任意属性集,如果 Y ⊆ X Y\subseteq X YX,则有 X → Y X\to Y XY,并称该函数依赖是平凡的

  • 平凡的函数反映了整体确定局部的一般常识,而不反应新的语义
  • 平凡的函数依赖的两个极端的例子是
    • X → ∅ X\to \varnothing X
    • ∅ → ∅ \varnothing \to \varnothing

在列举函数依赖时可以忽略平凡的函数依赖

  • 非平凡的函数依赖:如果 Y ⊈ X Y\not\subseteq X YX,则 X → Y X\to Y XY是非平凡的函数依赖

数据依赖与冗余 --《数据库》_第2张图片

上面这一大段抽象的话讲的是,不能够靠特例判断一个函数依赖成立,但是可以判断其不成立

函数依赖是关于现实世界的断言

数据依赖与冗余 --《数据库》_第3张图片

上面的定义说的是传递性性质,下面给出了证明

逻辑蕴含

数据依赖与冗余 --《数据库》_第4张图片

数据依赖与冗余 --《数据库》_第5张图片

你可能感兴趣的:(数据库系统原理,数据库)