数据库系统——第五讲 关系模型之关系演算


关系演算之关系元组演算

重点与难点:关系元组演算公式的递归定义;关系域演算公式的递归定义
关系演算是以数理逻辑中的谓词演算为基础的
关系演算是描述关系运算的另一种思维方式
按照谓词变量的不同,可分为关系元组演算关系域演算

  • 关系元组演算是以元组变量作为谓词变量的基本对象

  • 关系域演算是以域变量作为谓词变量的基本对象
    在这里插入图片描述
    A
    在这里插入图片描述
    下面举四个例子来更直观地阐述:
    在这里插入图片描述
    在这里插入图片描述

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


关系演算之关系域演算

重点与难点:关系元组演算公式:与 、或 、非 、存在量词 、全称量词
在这里插入图片描述
在这里插入图片描述
基于关系域演算的QBE语言
(1)关系域演算语言QBE

  • QBE: Query By Example
  • 1975年由M. M. Zloof提出,1978年在IBM370上实现
  • 特点:操作独特,基于屏幕表格的查询语言,不用书写复杂的公式,只需将条件填在表格中即可
  • 是一种高度非过程化的查询语言
  • 特别适合于终端用户的使用

(2)QBE的基本形式
QBE操作框架由四个部分构成:
 关系名区:用于书写欲待查询的关系名
 属性名区:用于显示对应关系名区关系的所有属性名
 操作命令区:用于书写查询操作的命令
 查询条件区:用于书写查询条件

(3)QBE的操作命令
 Print 或 P. ---- 显示输出操作
 Delete或D. ---- 删除操作
 Insert或I. ---- 插入操作
 Update或U. ---- 更新操作

  • 示例,如下图表示, 向Student表中插入两个元组
    <98030105, 刘二, Male, 35, 03, 980301>
    <98030106, 刘三, Male, 32, 03, 980301>

关系演算之安全性

(1)什么是关系运算的安全性?
“不产生无限关系和无穷验证的运算被称为是安全的”

  • 关系代数是一种集合运算,是安全
  • 关系演算不一定是安全的

关于三种关系运算的一些观点

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


小结

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值