数据依赖对关系模型

探讨了关系模型中数据依赖的概念,包括函数依赖及其对数据库设计的影响。解释了数据冗余、更新异常等问题,并提出了解决方案。分析了非平凡依赖、完全与部分函数依赖的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据依赖对关系模型

关系模式(U,D,DOM,F)

  • 简化为一个三元组
    • R(U,F)
  • 当且仅当U上的一个关系r满足F时,r称为关系模式R(U,F)的一个关系
学校数据库的语义
  • 一个系有若干个学生,一个学生只有一个系
  • 一个系只有一名主任
  • 一个学生可以选修多门课程,每门课程有若干学生选修
  • 每个学生所学的每门课程都有一个成绩
属性U上的一组函数依赖F:
  • F = {Sno -> sdept,sdept ->Mname,(Sno,Cno)->grade}
假设存在这样一个关系
  • Student(Sno , Sdept , Mname , Cno ,Grade)
    在这里插入图片描述
  • 系名、系主任重复出现 (数据冗余)
  • 张明退休,李四接替 (更新异常)
  • 一个新系刚成立,尚无学生 (插入异常)
  • 一个系的学生全部毕业 (删除异常)
原因:
  • 由于存在关系模式中的某些数据依赖引起的
解决方法
  • 通过分解模型来消除其中的不适

定义6.1

  • 设R(U)是一个属性集U上的关系模式

  • 函数依赖是指R的所有关系实例均瑶满足的约束条件

  • 函数依赖的语义范畴的概念

  • 数据库设计者可以对现实世界做出强制规定。

例:Student(Sno,Sname,Ssex,Sage,Sdept)
  • 假设不允许重名,则有:
  • Sno->Ssex,Sno->sage,sno->sdept,Sno<–>sname,sanme->ssex,sname->sage,snaem->sage
函数依赖可以在不同角度分:
  • 在关系模式中R(U)中,对于U的子集X和Y
    • 如果X-》Y,但Y不属于X,则称X-》y是非平凡的依赖
    • 如果X-》Y,但Y属于X,则称X-》y是非平凡的依赖
在关系中sc(sno,cno,grade)
  • 非平凡的函数依赖(sno,cno)=>grade
完全函数依赖与部分函数依赖

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值