第二章 关系数据库

第二章 关系数据库

2.1 关系数据结构及形式化定义 关系数据结构及形式化定义

2.1.1 关系
笛卡尔积
笛卡尔积给定一组域D1,D2,D3……Dn,(允许某些域是相同的)。两两集合的乘积,所有排列组合的总和,可以表示为一张二位表,表中的每行对应笛卡尔积的一个元素,表中每列对应一个域
元组表中的一行
分量表中的单个元素(值)
基数排列组合的总个数,也就是笛卡尔积中元组的个数
交换?笛卡尔积不满足交换律D1D2≠D2D1
关系

笛卡尔积中取出的有实际意义的元组来构造的关系(二维表)

笛卡尔积的有限子集

属性:列名

码:
候选码某一(多个)属性值能唯一确定一个元组,该属性组为候选码
全码所有的属性是候选码,所有属性算上才能决定一条元组
主码若一个关系有多个候选码,选定一个为主码
主属性候选码的各个属性
非主属性、非码属性除了主属性之外的属性
基本关系的性质:
  • 列同性质、顺序无所谓、任意两个元组不能完全相同、最小分量
2.1.2 关系模式

对关系的描述就是二维表结构

2.1.3 关系数据库

所有关系的集合构成的一个关系数据库

.关系数据库的型: 关系数据库模式,是对关系数据库的描述。 关系数据库模式,是对关系数据库的描述。
• 关系数据库的值: 关系模式在某一时刻对应的关系的集合,通
常称为关系数据库。

2.2 关系操作

 常用的关系操作

• 查询操作:选择、投影、连接、除、并、差、交、
笛卡尔积
选择、投影、并、差、笛卡尔基是5种基本操作 种基本操作
• 数据更新:插入、删除、修改

 关系操作的特点

• 集合操作方式:操作的对象和结果都是集合, 一次
一集合 的方式

2.3 关系的完整性

• 实体完整性 (必须满足)

若属性A是基本关系R的主属性,则属性A不能取空值(不知道,不存在,无意义)的值。实体完整性规则规定基本关系的所有主属性都不 能取空值

• 参照完整性(必须满足)

参照完整性要求关系中不允许引用不存在的实体。即参照的关系中的属性值必须能够在被参照关系找到或者取空值

  1. 关系间的引用(一对多、多对多【学生实体及其内部的领导联系】)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0T8cEIo2-1584629823898)(C:/Users/ASUS/AppData/Roaming/Typora/typora-user-images/1583810825365.png)]

​ 学生关系引用了专业关系的主码“专业号”。 学生关系中的“专业号”值必须是确实存在的专业

2.外码

在参照关系R中的候选键中的一个属性(不是其主键),中选一个对应被参照关系中的主键,则选出来的那个叫外码)

外码必须是本关系的一个或一组属性;

外码不是本关系的码;

外码与另一个关系(可能是同一关系)的主码相对应;

• 用户定义的完整性
  • • 唯一值约束(UNIQUE);
  • • 非空值约束(NOT NULL);
  • • 检查约束(CHECK);
  • • 缺省值约束(DEFAULT)。

2.4 关系代数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-c7rWiuRK-1584629823918)(C:/Users/ASUS/AppData/Roaming/Typora/typora-user-images/1583823797567.png)]

广义笛卡尔积

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aUREzo0L-1584629823922)(C:/Users/ASUS/AppData/Roaming/Typora/typora-user-images/1583824059644.png)]

专门的关系运算
关系运算说明
选择选择又称为限制。它是在关系R中选择满足给定条件的各元 组从行的角度进行的运算,记作σF(R)={ t∈R ∧ F(t)=‘真’}
投影关系R上的投影是从R中选择出若干属性列组成新的关 系。从列的角度进行的运算,有可能删除某些元组,避免重复,记作: ΠA(R)={t[A] |t ∈R }
连接θ连接是从两个关系的笛卡尔积中选取属性间满足一定 条件的元组。这种运算形式称作θ连接,记作: 1584021134101
1584021396863
把它看作寻找供应商
实例
1584020202304
选择:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XDzg19HF-1584629823930)(C:/Users/ASUS/AppData/Roaming/Typora/typora-user-images/1584020319225.png)]

投影:
1584020959472
连接:

步骤一(1)求R×S;(2)选择R中属性A和S中属性B满足条件的元组组成新关系即为连接运算的结果。

1584021651342
等值连接:即[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-U9GPTDof-1584629823935)(C:/Users/ASUS/AppData/Roaming/Typora/typora-user-images/1584021978301.png)]
自然连接:

​ 一种特殊的等值连接,它要求两个 关系中进行比较的分量必须是相同的属 性组,并且 在结果中把重复的属性列去掉

1584021845265
悬浮元组:

​ 自然连接时,舍弃的元组

外连接:
  • 如果把悬浮元组也保存在结果关系中,而在其他属 性上填空值(Null),就叫做外连接
  • 左外连接:只保留左边关系R中的悬浮元组
  • 右外连接: 只保留右边关系S中的悬浮元组

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cPpXeQcx-1584629823942)(C:/Users/ASUS/AppData/Roaming/Typora/typora-user-images/1584022410403.png)]

1584022442772
除运算:
1584023068391
综合举例:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QLJdFQCC-1584629823952)(C:/Users/ASUS/AppData/Roaming/Typora/typora-user-images/1584023035682.png)]

1584020202304

[外链图片转存中…(img-QLJdFQCC-1584629823952)]

1584020202304 1584023113631
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python与遥感

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值