什么是多值依赖(DBMS)?

多值依赖(MVD) 在表中存在一行或多行。多值依赖会阻止第四范式。它至少涉及一个表的三个属性。它是关系中两组属性之间的约束。

它在数据库管理系统(DBMS)中用符号“->->”表示。

我们以两种不同的方式使用多值条件 -

  • 测试关系以决定它们在给定的实际和多值依赖关系下是否合法。

  • 确定对合法关系安排的限制。我们将只关心满足实际和多值依赖关系的给定安排。

示例

考虑一个演示多值依赖的示例-

让我们考虑一个关系模式R(A,B,C,D),多值依赖 A →→ BC 在逻辑上是否意味着多值依赖 A →→ B 和 A →→ C?如果是,证明,否则举反例。

解决方案

A --> BC 是 A --> B | C

也就是说,A --> B 和 A --> C 都可以容纳。(函数依赖推理规则中的联合规则)

符号 A --> BC 总是有用的,因为多值依赖总是成对出现。这意味着该关系等于 AB JOIN AC。即关系满足连接依赖{AB, AC}。

推理规则的联合规则如下 -

A --> B , A --> C ==> A --> BC

证明

A → B(给定)

A → C(给定)

A → AB(通过 A 增强。其中 AA = A)

AB → BC(用 B 增广)

A → BC(对 3 和 4 使用传递规则)

MVD 传递规则

让我们试着理解 MVD 传递规则的证明 -

如果 A ->B 成立,B ->C 成立,则 A ->B ->C 成立。

给定的函数依赖(FD)集如下 -

ISBN--> 书名,出版商

ISBN, 否 --> 作者

发布者 --> PU_URL

我们需要证明这个规则。考虑 A=ISBN、B=PUBLISHER、C=PU_URL。

要找到隐含的传递规则,请找到 A+ 的覆盖并计算。

  • 现在从 x={ISBN} 开始

  • FD ISBN--> TITLE, PUBLISHER 具有完全包含在当前属性集 x 中的 LHS。

  • 通过 FD RHS 属性集扩展 x,给出 x={ISBN,TITLE,PUBLISHER}

  • 现在 FD:PUBLISHER -->PU_URL 适用

  • 将 FD 的 RHS 属性集添加到当前属性 SET x,给出 x={ISBN,TITLE,PUBLISHER,PU_URL}

这里我们可以得出结论 ISBN-->PU_URL

以上是 什么是多值依赖(DBMS)? 的全部内容, 来源链接: utcz.com/z/361396.html

回到顶部