数据库系统(上):模型与语言--第5讲 关系模型之关系演算

目录

  • 关系演算之关系元组演算
  • 关系演算之关系域演算
  • 关系演算之安全性
  • 关于三种关系运算的一些观点

重难点

  • 关系元组演算公式的递归定义;关系域演算公式的递归定义
  • 关系元组演算公式:与∧、或∨、非¬、存在量词∃、全称量词∀
  • 用关系元组演算公式表达查询的思维训练
  • 用QBE语言表达查询的思维训练
  • 关系元组演算、域演算和关系代数在表达查询方面的思维差异

关系演算

  • 关系演算是以数理逻辑中的谓词演算为基础的
  • 关系演算是描述关系运算的另一种思维方式
  • SQL语言是继承了关系代数和关系演算各自的优点所形成的
    按照谓词变量的不同,可分为关系元组演算关系域演算
    • 关系元组演算是以元祖变量作为谓词变量的基本对象
    • 关系域演算是以域变量作为谓词变量的基本对象

关系元组演算

在这里插入图片描述在这里插入图片描述

关系域演算

在这里插入图片描述在这里插入图片描述

关系运算的安全性

在这里插入图片描述

关于关系运算的一些观点

  • 关系运算有三种:关系代数、关系元组演算、关系域演算
  • 三种关系运算都是抽象的数学运算,体现了三种不同的思维
    • 关系代数:以集合为对象的操作思维,由集合到集合的变换
    • 元组演算:以元组为对象的操作思维,取出关系的每一个元组进行验证,有一个元组变量则可能需要一个循环,多个元组变量则需要多个循环
    • 域演算:以域变量为对象的操作思维,取出域的每一个变量进行验证其是否满足条件
  • 三种运算之间是等价的
    • 关系代数与安全的元组演算表达式与安全的域演算表达式是等价的。即一种形式的表达式可以被等价地转换为另一种形式
  • 三种关系运算都可以说是非过程性的
    • 相比之下,域演算的非过程性最好,元组演算次之,关系代数最差
  • 三种关系运算虽是抽象的,但却是衡量数据库语言完备性的基础
    • 一个数据库语言如果能够等价地实现这三种关系运算的操作,则说该语言是完备的
    • 目前多数数据库语言都能够实现这三种运算的操作,在此基础上还增加了许多其他的操作,如赋值操作、聚集操作等
  • 数据库语言可以基于这三种抽象运算来设计
    • 用“键盘符号”来替换抽象的数学符号
    • 用易于理解的符号组合来表达抽象的数学符号
    • 例如:ISBL语言——基于关系代数的数据库语言

总结

在这里插入图片描述

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值