DBMS中的TRC和DRC是什么?

What is TRC and DRC in DBMS?

什么是元组关系演算 (TRC)域关系演算 (DRC)?它们与关系代数有何不同?

我是 DBMS 领域的新手。但是我学过关系代数的基础。

关系代数 是过程语言,元组关系计算 是非过程语言。 在元组关系语言中,我们使用符号来请求数据。

虽然关系代数在 query evaluation分析,SQL其实是 基于不同的查询语言。 关系演算 有助于定义语义 关系代数和 SQL

下面是例子(Link between TRC and SQL):

TRC = {T | Teaching(T) AND T.Semester = ‘F2000’}
SQL = SELECT *
      FROM Teaching T
      WHERE T.Semester = ‘F2000’

目标T对应SELECT列表:查询结果包含整个元组。正文分为两个子句:

  • Teaching(T)对应FROM子句
  • T.Semester = ‘F2000’ 对应于 WHERE 子句

在上面的回答中,我想添加以下行: 上面的语句 = TRC = {T |教学 (T) AND T.Semester = ‘F2000’}

可以表示为 "T is a variable(tuple) whose value is equal to Teaching(T) and T.Semester = ‘F2000’ simultaneously" IE。 T 是来自关系 "Teaching" 的元组,并引用具有属性 "Semester" 的元组作为“F2000”。

  • 在关系代数中,变量包含关系,运算符通过转换或组合关系导出关系。
  • 关系演算使用集合生成器符号和逻辑连接词通过描述构成关系的元组和属性来定义新关系。
  • 在元组关系演算中,变量表示元组,属性按名称引用。
  • 在域关系演算中,变量表示属性,元组是通过位置符号构造的。

域关系演算 - 与元组关系演算相反,域关系演算使用属性列表 select 根据条件从关系中编辑。它与 TRC 相同,但不同之处在于 selecting 属性而不是 selecting 整个元组。

元组关系演算 - 元组关系演算是一种非过程查询语言,它指定 select 关系中的元组。它可以 select 具有值范围的元组或某些属性值的元组等。结果关系可以有一个或多个元组。