第九章 关系规范化理论

9.1 关系模式设计的问题

数据冗余:是指同一个数据在系统上多次重复出现。

更新异常:如果想要修改某一门课的老师的姓名,如果表中有多个学生选修了该门课,则老师的姓名也要修改多次。

插入异常:如果插入了一个新课程,这个课程没有学生选修,则SNO为空。

删除异常:如果想要删除某个学生的选课信息,则会连同课程的信息一起删除了。

解决方法:模式分解,即把一个关系模式分解成两个或多个关系模式,在分解的过程中消除那些“不良”的函数依赖,从而获得良好的关系模式。

     9.2 函数依赖

只有一对多和一对一的情况会存在函数依赖,多对多无法形成函数依赖。 这里需要注意如果是多对一,若X和Y之间是1:n关系,则函数依赖的形式是 Y---->X ,多的决定少的。

1.平凡依赖与非平凡依赖

给定的关系模式中,若X和Y都是U的子集,且 X—>Y ,Y与X的包含关系决定了是不是平凡。

Y ⊈X,则称X→Y是非平凡的函数依赖

Y⊆X, 则称X→Y是平凡的函数依赖

2.完全函数依赖和部分函数依赖

给定的关系模式中,若X和Y都是U的子集,且 X——>Y ,从X中选出真子集X′,X′和Y的决定关系决定了它们是完全依赖还是部分依赖。这在第二范式的定义中非常重要。

X′↛ Y ,则称Y对X完全函数依赖

X′→Y ,则称Y不完全函数依赖于X,或Y对X部分函数依赖

3.传递函数依赖

给定的关系模式中,若X和Y都是U的子集,若X→Y ,且Y⊈X,Y↛X,并且Y→Z, Z⊈Y, 则称Z对X传递函数依赖。

若X→Y且Y→X,则 X←→Y,称Z直接依赖于X。

4.候选码与主码

给定关系模式R<U,F>,若K⊆U,且K——>U,则称K为R的候选码,如果候选码有多个,则选其中的一个作为主码。

包含在候选码中的属性称为主属性,其余的称为非主属性。

5.超键 super key

只要含有候选码中的属性就算做超键,可以包含其他冗余的元素。

6.外码  foreign key

如果关系模式R1中的某属性集不是R1的主键,而是另一个关系R2的主键则该属性集是关系模式R1的外码或外键

9.2.3函数依赖的推理规则
Armstrong公理

1自反律
2.增广
3.传递

Armstrong公理推论
4.合并
5.分解
6.伪传递
7.复合

在关系模式R(U,F)中,U是R的属性全集,F是R上的一组函数依赖。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值