深入浅出,实例剖析 —“多值依赖”的3种定义和实例图

本文详细介绍了数据库基础理论中的多值依赖,通过三种定义及其实例图,帮助读者理解这一概念,包括概念引入、标准定义、形式化定义和平实定义,以及其在数据冗余和规范化中的作用。
摘要由CSDN通过智能技术生成

”多值依赖“是数据库基础理论的重要概念,具有一定的学习难度。本文基于多值依赖的3种常见定义,对其分别给出实例图,并以文字进行恰当解释,使这一技术重点和难点变得易于理解。

1. 概念的引入

【例】学校中某一门课程由多个教师讲授,他们使用相同的一套参考书。每个教师可以讲授多门课程,每种参考书可以供多门课程使用。可以用一个非规范化的关系来表示教师T,课程C和参考书B之间的关系(如表1所示)。
把这张表变成一张规范化的二维表,如表2所示。
                 
• 关系模型Teaching(C,T,B)的码是(C,B,T),即all-key,因而Teaching∈BCNF。但是当某一课程(如物理)增加一名讲课教师(如周英)时,必须插入多个(这里是三个)元组:
(物理,周英,普通物理学),(物理,周英,光学原理),(物理,周英,物理习题集)。
• 同样,某一门课(如数学)要去掉一本参考书(如微分方程),则必须删除多个(这里是两个)元组:
(数学,李勇,微分方程),(数学,张平,微分方程)。
因而对数据的增删改很不方便,数据的冗余也十分明显。仔细考察这类关系模式,发现它具有一种称之为多值依赖(Multi-Valued Dependency,MVD)的数据依赖。

2. 多值依赖的标准定义及实例图

例如,在关系模式Teaching中,对于一个(物理,光学原理)有一组T值{李勇,王军},这组值仅仅决定于C上的值(物理)。也就是说对于另一个(物理,普通物理学),它对应的一组T值仍然是{李勇,王军},尽管此时参考书B的值已经改变了。因此T多值依赖于C,即C→→T。

[对教材的补充说明] 对于一个(物理,李勇)也是如此,即C→→B也成立。

3. 多值依赖的形式化定义及实例图

【说明】在以下两图中,字符的含义如下。
1)以带圈的“原”字表示:元组在属性Y上的值原本所处的位置;
2)以“√”号表示:如果交换st元组的Y值,那么,元组在属性Y上的值在移动后所处的位置。

4. 多值依赖的平实定义及实例图

     

  • 8
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值