数据库原理-关系数据库理论(数据依赖)

关系数据库逻辑设计
针对一个具体问题,应如何构造一个适合于它的数据模式,即应该构造几个关系,每个关系由哪些属性组成等
数据库逻辑设计的工具——关系数据库的规范化理论

关系数据库设计理论
-数据依赖
-范式(1NF,2NF,3NF,BCNF)
-关系模式的规范化

关系:描述实体及其属性、实体间的联系。
     -它是一张二维表,是所涉及属性的笛卡尔积的一个子集。
关系模式:用来定义关系。 Student (Sno, Sname, Ssex, Sage,Sdept)
关系数据库:基于关系模型的数据库,利用关系来描述现实世界。
           -从形式上看,它由一组关系组成。
关系数据库的模式:定义这组关系的关系模式的全体。

关系模式由五部分组成,即:
R(U,D,DOM,F)
R:关系名
U:组成该关系的属性名集合
D:属性组U中属性所来自的域DOM:属性向域的映象集合
F:属性间数据的依赖关系集合

一般就用到R(U),R(U,F)

什么是数据依赖
完整性约束的表现形式:
限定属性取值范围:例如学生成绩必须在0-100之间
定义属性值间的相互关连(主要体现于值的相等与否)
,这就是数据依赖,它是数据库模式设计的关键

数据依赖
是通过一个关系中属性间值的相等与否体现出来的数据间的相互关系
是现实世界属性间相互联系的抽象
是数据内在的性质
是语义的体现

数据依赖的主要类型
函数依赖(Functional Dependency,简记为FD)
多值依赖(Multivalued Dependency,简记为MVD)
连接依赖

关系模式的简化表示
关系模式R(U,D, DOM, F),简化为一个三元组:R(U, F)
当且仅当U上的一个关系r满足F时,r称为关系模式R(U,F)的一个关系

关系模式中容易存在的问题
1.数据冗余太大
-浪费大量的存储空间
2.更新异常
-数据冗余,更新数据时,维护数据完整性代价大
3.插入异常
-该插的数据插不进去
4.删除异常
-不该删除的数据不得不删

规范化理论
规范化理论正是用来改造关系模式
通过分解关系模式来消除其中不合适的数据依赖
以解决插入异常、删除异常、更新异常和数据冗余问题

函数依赖
设R(U)是一个属性集U上的关系模式,X和Y是U的子集若对于R(U)的任意一个可能的关系r
r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等
则称“X函数确定Y"或“Y函数依赖于X”,记作X→Y。
X称为这个函数依赖的决定属性集(Determinant)。

说明:
1.函数依赖是指R的所有关系实例均要满足的约束条件
2.函数依赖是语义范畴的概念
例如“姓名→年龄”这个函数依赖只有在不允许有同名人的条件下成立
3.数据库设计者可以对现实世界作强制的规定
例如设计者可以强行规定不允许同名人出现,因而使函数依赖“姓名→年龄”成立
4.若X→Y,并且Y→X, 则记为X←→Y
5.若Y不函数依赖于X,则记为X→Y。

平凡函数依赖与非平凡函数依赖
在关系模式R(U)中,对于U的子集X和Y
如果X→Y,但Y不属于X,则称X→Y是非平凡的函数依赖
若X→Y,但Y∈X则称X→Y是平凡的函数依赖
对于任一关系模式,平凡函数依赖都是必然成立的,它不反映新的语义,
因此若不特别声明,我们总是讨论非平凡函数依赖

完全函数依赖与部分函数依赖
在关系模式R(U)中,如果X→Y,并且对于X的任何一个真子集X',都有X'完成函数依赖于Y,则称Y完全函数依赖于X
若X→Y,但Y不完全函数依赖于X,则称Y部分函数依赖于X

传递函数依赖
在关系模式R(U)中
如果X→Y,Y→Z,且Y不属于X,Y不依赖X,则称Z传递函数依赖于X
如果Y→X,即X←→Y,则Z直接依赖于X


设K为关系模式R(U,F)中的属性或属性组合
若K完全依赖于U,则K称为R的一个侯选码(Candidate Key)
若关系模式R有多个候选码,则选定其中的一个做为主码(Primary key>
候选码能够唯一地标别关系的元组,是关系模式中一组最重要的属性
主码又和外码一起提供了一个表示关系间联系的手段
 

这一部分的学习都是概念,看第一遍的时候没有完全搞明白,不过没事,多看几遍可以明白的,不要着急,慢慢来,一定要看看例题做一做,会理解的快一点

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
关系数据库(Relational Database)是一种基于关系模型的数据库管理系统(DBMS),它使用表格来组织和管理数据。在关系数据库中,数据被组织为一系列二维表格,其中每个表格由一组列和行组成。每一列代表一个属性(Attribute),每一行代表一个记录(Record)。 关系数据库的设计和管理涉及到很多理论方面的知识,其中包括关系代数、关系模型、范式理论等。 关系代数是一种用于描述和操作关系数据的一套数学符号和运算。它包括一些基本操作,如选择(Select)、投影(Project)、并(Union)、差(Difference)、笛卡尔积(Cartesian Product)等,这些操作可以通过一系列的代数操作符组合来实现对关系数据的查询和操作。 关系模型是关系数据库的基础,它是由埃德加·科德(Edgar F. Codd)于1970年首次提出的。关系模型使用关系表格来表达数据之间的关系,通过定义表格之间的关联和约束来保证数据的完整性和一致性。 范式理论是用于评估和设计关系数据库的规范化原则。范式规定了关系数据库中的表格应该满足的特定条件,以减少数据冗余和提高数据的存储效率。常见的范式有第一范式、第二范式、第三范式等,每个范式都有其特定的规则和依赖关系。 通过理解和应用关系数据库的相关理论,可以帮助数据库设计人员更好地设计和管理数据库,提高数据查询和操作的效率和准确性。同时,了解关系数据库理论也有助于数据库开发人员理解数据库系统的原理和性能优化的方法,从而更好地应用和利用数据库系统。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值