SQL学习笔记二——关系数据库

数据库系统-关系数据库

关系数据库模型

关系数据模型的三要素

  • 关系数据结构
  • 关系操作
  • 关系完整性约束

关系数据结构

关系

设D1,D2,…Dn是n个值域,D1×D2×…×Dn的子集R称作D1,D2,…Dn上的关系,记作R(D1,D2,…Dn)

关系的正确性

只有符合客观实际的关系才是正确的关系

关系的属性

由于域可能相同,为了加以区分,可为关系R(D1,D2,…Dn)的每个域Di起一个不同的名字Ai作属性,故关系R常表示为R(A1,A2,…An)

关系的键

关系的某些属性集合具有区分不同元组的作用,称作

超键

如果关系的某一属性的值能唯一标识每个元组,则称该组属性为超键

候选键

如果一个超键的任意真子集都不是超键,则称该超键为候选键
候选键=极小的超健

主键

每个关系都有至少一个候选键,人为指定其中一个作为主键

外键

设F是关系R的属性子集.若F与关系S的主键K相对应,则称F是R的外键

  • R一参照关系
  • S一被参照关系
    R与S可以是同一关系

关系操作

  • 查询操作:从关系数据库中查找数据
  • 更新操作:对关系数据库进行更新
查询语言

查询语言是用于表示关系操作的语言

查询语言的类型:

  • 关系代数

使用关系代数表达式明确给出查询的执行过程

  • 关系演算

使用谓词逻辑表达式描述查询
元组关系演算:谓词逻辑变量是元组
域关系演算:谓词逻辑变量是域

  • 结构化查询语言

具有关系代数和关系演算的双重特点
集DDL、DML、DCL于一体

关系完整性约束

完整性约束:关系数据库中的所有数据必须满足的约束条件

完整性约束类型:

  • 实体完整性
  • 参照完整性
  • 用户定义完整性
实体完整性
  • 关系中任意元组的主键值必须唯一
  • 关系中任意元组在主键中的属性值非空
参照完整性

设F是关系R的外键,F参照关系S的主键,则R中任意元组的F属性值必
须满足以下两个条件之一:

  • F的值为空
  • 若F的值不为空,则F的值必须在S中存在
用户定义完整性约束

根据应用需求定义的完整性约束

关系代数

关系代数基本操作

  • 选择
  • 投影
  • 笛卡尔积
  • 重命名

派生关系代数

  • 连接
  • 自然连接
  • 外连接:左外连接、右外连接灯、全外连接
  • 反连接

扩展关系代数

  • 分组操作
  • 赋值操作

关系演算

元组关系演算

元组关系演算用形如{t|P(t)}的表达式表示查询

  • t:元组变量
  • P:谓词

元组关系演算表达式的结果是所有使谓词P为真的元组t的集合

域关系演算

域关系演算表达式与元组关系演算表达式的定义类似,不同之处是表达式中使用域变量,而不是元组变量
域关系演算表达式的一般形式为{(x1,x2,…,xn)|P(x1,x2,…,xn)}

  • x1,x2,…,xn:域变量
  • P:域关系演算公式

域关系演算表达式的结果是所有使P(x1,x2,…,xn)为真的元组(x1,x2,…,xn)的集合

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值