数据库原理期末知识点复习集锦及习题——第二章

本文详细介绍了关系数据结构,包括关系、关系模式和关系数据库的概念。讨论了关系操作,如选择、投影、并、差和笛卡尔积,并强调了关系的完整性,包括实体完整性和参照完整性。此外,还介绍了关系代数这一抽象查询语言及其基本运算。最后,通过实例展示了如何应用这些概念于实际的数据库操作,如查询特定学生和教师信息。
摘要由CSDN通过智能技术生成

第二章

一、关系数据结构及形式化定义
1. 关系
  • 域:一组具有相同数据类型的值的集合
  • 笛卡尔积:域上一种集合的运算D1×D2
    • 每一个元素D1叫做一个元组
    • 元素中每一个id值叫做一个分量
    • 一个域允许不同取值个数称为这个域的基数
  • 码:唯一确定一个元组的属性(学号)或属性组(姓名+性别)–候选码可以有多个 一个关系的主码只能有一个 从众多候选码中挑选一个最合适的作为主码
2. 关系模式

关系是关系模式某一时刻的状态、内容 是动态的

关系模式是对关系的描述,是静态、稳定 是关系数据的

R(A,B,C,D)

3.关系数据库

所有关系的集合构成关系数据库 即是关系模式在某一时刻对应关系的集合 也称关系数据库的


二、 关系操作

5种基本操作:选择、投影、并、差、笛卡尔积

特点:操作的对象和结果都是集合、一次一集合


三、关系的完整性

👇关系的两个不变性:①②

  • 实体完整性(必须满足):主属性不能取空值
  • 参照完整性(必须满足):
    在这里插入图片描述

外码

  • 针对某一关系数据库的约束条件,反映某一具体应用所必须满足的语义要求

四、关系代数

抽象的查询语言,用关系运算来表达查询

  • 运算对象是关系

  • 运算结果也是关系

  • 关系代数运算符两类:集合运算符+关系运算符

    • 传统集合运算符:从行开始

      • 并∪
        • R和S有相同的目 n(两个关系都有n个属性)
        • 相同的属性取自同一个域
        • R S不同区域相加
        • R和S有相同的目 n(两个关系都有n个属性)
        • 相同的属性取自同一个域
        • R有而S没有
      • 交∩
        • R和S有相同的目 n(两个关系都有n个属性)
        • 相同的属性取自同一个域
        • R S共有的区域(既属于R也属于S的)
      • 笛卡尔积
        • R:n目关系,K1个元组
        • S:m目关系,K2个元组
        • R×S:m+n目列 K1×K2个行
    • 专门关系运算符

      • 选择:在关系R中选择满足给定条件的元组 行级别运算

        书写规范:

        ₫ Sdept=“IS”(Student) 查询信息系学生的全部信息

        ₫ Sage<20∩Ssex=“男”(“Student”) 查询年龄小于20且性别为男的学生信息

在这里插入图片描述

- 投影:从R中选择出若干属性列组成新的关系 **列可能会变少**  *列级别的运算*

  **书写规范:**

  ΠSname,Sdept(Student) **选择学生关系上学生姓名和所在系的两个属性的投影**

在这里插入图片描述

- 连接 θ:从两个关系的笛卡尔积中选取属性间满足一定条件的元组

  - 普通连接

在这里插入图片描述
- 等值连接
在这里插入图片描述
- 自然连接
在这里插入图片描述
两种关系中由相同名称的属性 所以用其关系的名字列在前边作为区分 R.B S.B 先做笛卡尔积 再做选择运算

  • 悬浮元组:只在一部分中存在而另一部分不存在的情况 针对这种情况会被丢掉

    • 外连接 左外连接 右外连接
  • 象集:R中属性组X上值为x的所有元组在Z上分量的集合
    在这里插入图片描述
    在这里插入图片描述
    练习题

在这里插入图片描述
一、

主码:

  • 学生表:
  • 课程表:
  • 成绩表:
  • 教师表:

外码:

  • 学生表:无外码
  • 课程表:Tno是course关系的外码
  • 成绩表:Sno、Cno
  • 教师表:无外码

二、结合题目说明三种完整性 举例

  • 实体完整性:关系主属性不能取空值——Student表的Sno、Course表的Con、Score表的Sno和Cno、Teacher的Tno都不能为空
  • 参照完整性:
  • 用户定义完整性:

三、写出如下关系代数表达式

  1. 查询班级为95033的男生信息

    ₫ class="95033"∩sex=“男”;

  2. 查询职称为讲师的教师信息

    Π Tname(₫ prof=“讲师”(Teacher))

  3. 查询每门课程上课的老师姓名,结果包含课程号、课程名、教师姓名

  4. 查询所有不到70分的学生的姓名以及对应课程名姓名

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值