> 文章列表 > 数据库关系代数笔记

数据库关系代数笔记

数据库关系代数笔记

关系模式

关系模式是对关系的描述。关系模式是型,关系是值

关系模式通常可以记为R(U) 或 R(A1,A2,...,An)

R:关系名A1,A2,...,An:属性名比如,学生(学号,姓名,籍贯)

关系模式是对关系的描述,是静态的、稳定的;关系是在某一时刻的状态或内容,是动态的,随时间不断变化的。 

键 

能够区分不同元组的属性的集合叫做键--key

两个同学在一门课中可能得一个分

{SNO,Cno}可以作为一个键,三个放一起不够精简

候选键:可以理解成最精简的键。

主键:每个关系至少有一个候选键,人为指定其中之一是主键。

外键:不同的关系中的元组可以存在联系,这种联系时通过外键建立起来的。

数据库的完整性约束

实体完整性约束:

  • 关系中任意元组的主键必须是唯一的:关系是一个集合集合中的元素是不能重复的
  • 任意元组的属性值非空

参照的完整性:

F必须是S的子集

                         看ΠK(F)-ΠK(R)是不是空

关系代数

明确操作过程的语言

操作

基本操作

  1. 选择:搭配各种逻辑运算
  2. 投影:选出指定的列,并去掉重复的元组
  3. 并:元组和元组之间用∪ 关系内用\\wedge
  4. 笛卡尔积:将两个元组无条件的连接在一起,通常搭配选择操作
  5. 重命名:修改关系名或者属性名 ,当关系需要自连接的时候往往采用重命名的方法。

比较经典的习题:找出3006号课程的最高分

派生操作:

派生操作可以由基本操作演化而来,派生操作的目的是为了方便 

选择操作:

选择符合关系的元组:选择运算具有交换性。

 投影操作

从一个关系中选出指定的列,并去掉重复的元组 投影操作不具有交换律

并/交操作--Union

R S必须具有相同个数的属性,对应属性的元素必须相容。 

连接

d:大概意思就是比如R(a,b) a是课程号 b都是教师小明 S(b,c)中b也都是小明 c是小明使用的教室 课程和教室分别是RS的主键 这样R∞S相当于做了一个笛卡尔积是么 所以答案是D

c:左外连接必须包含没有选课的人的信息,所以选A

证明题:

 由题意分析 R.a,R.b\\neq\\phi    并且R.b\\subseteqS.b 所以R.b中的元素都能在S.b中找到,但是反之不一定, 对于RS的自然连接,一定不会出现R中在S中不能拼接的元组,所以成立。