2.2 关系操作

2.2 关系操作基本关系操作 理解查询 Query 以及数据操作 如插入 Insert 删除 Delete 修改 Update 的基本原理

大家好,欢迎来到IT知识分享网。

2.2 关系操作

思维导图: 2.2 关系操作

2.2 关系操作

2.2.1 基本的关系操作 

笔记:2.2 关系操作

2.2 关系操作概述

– 关系模型定义了关系操作的能力,但不规定具体的实现语法。
– 根据上述定义,不同的关系数据库管理系统可以具备不同的语言来实现这些操作。

2.2.1 基本关系操作

1. 查询 (Query) 和 数据操作 (Data Manipulation)
   – 查询 (Query):关系模型具有强大的查询能力。
   – 数据操作 (Data Manipulation):包括插入 (Insert)、删除 (Delete)、修改 (Update)。


2023/11/23补充

我的理解:

其实在我看来其实就是对数据库的操控操作。本质还是对数据的操控。


 

2. 查询操作的分类
   – 选择 (Select):基于条件筛选元组。
   – 投影 (Project):选择某些属性,忽略其他属性。
   – 连接 (Join):基于共同属性组合两个关系。
   – 除 (Divide):一种特殊的查询操作。
   – 并 (Union):两个关系的并集。
   – 差 (Except):一个关系与另一个关系的差集。
   – 交 (Intersection):两个关系的交集。
   – 笛卡儿积:组合两个关系的所有可能元组。







3. 基本操作与复合操作
   – 选择、投影、并、差、笛卡儿积被视为5种基础操作。
   – 其他操作可以从这五种基本操作中派生。

2.2.2 关系操作的特性

– 集合操作方式:关系操作的核心思想是集合论,即每次操作处理的对象和结果都是元组的集合。这也被称为“一次一集合 (set-at-a-time)”方式。
– 对比非关系模型:与之相对,非关系数据模型采用“一次一记录 (record-at-a-time)”方式来进行数据操作。

2.2 关系操作 2.2.2 关系数据语义的分类

笔记:2.2.2 关系数据语言的分类

2.2.2.1 关系数据语言的历史及分类

1. 早期的关系操作表现形式:
    – 关系代数 (Relational Algebra): 用运算表达查询要求。
    – 关系演算 (Relational Calculus): 用谓词表达查询要求。
        – 可以进一步细分为:
            – 元组关系演算: 基于元组变量的谓词。
            – 域关系演算: 基于域变量的谓词。





我的理解:

其实这里就是要告诉我们关系数据语言的历史,让我们更好的理解这一概念。

2. 关系完备性:2.2 关系操作2.2 关系操作
    – 语言如果能表示关系代数所表达的查询,则具有关系完备性。
    – 已证实:关系代数、元组关系演算、域关系演算三者在表达能力上等价。

3. 实际关系数据库语言与理论模型的差异:2.2 关系操作
    – 虽然关系代数、元组关系演算和域关系演算是理论的查询语言,但与实际数据库系统的语言存在差异。
    – 实际查询语言除基础功能外,还有附加功能如:聚集函数、关系赋值、算术运算等。

4. 结构化查询语言 (SQL):2.2 关系操作
    – 介于关系代数与关系演算之间的语言。
    – 不仅支持查询,还具备数据定义、数据控制等多种功能。
    – SQL体现了关系数据语言的优点,是关系数据库的标准语言。


2.2.2.2 关系数据语言分类总览:2.2 关系操作

1. 关系代数语言: 如 ISBL。
2. 关系演算语言: 分为
    – 元组关系演算语言: 如 ALPHA、QUEL。
    – 域关系演算语言: 如 QBE。
3. 具有关系代数和关系演算特点的语言: 如 SQL。



2.2.2.3 SQL的特性:

– 高度非过程化: 用户无需知道数据检索的具体路径。
– 查询优化机制: 数据库系统自动选择最佳存取路径,提高查询效率。

2.2 关系操作

总结:

重点
  1. 基本关系操作:理解查询(Query)以及数据操作(如插入(Insert)、删除(Delete)、修改(Update))的基本原理。
  2. 查询操作的分类与应用:掌握选择(Select)、投影(Project)、连接(Join)等操作的具体应用。
  3. 关系操作的集合性质:理解关系操作作为集合操作(Set-at-a-time)的特性,与非关系模型(一次一记录操作)的区别。
  4. 关系数据语言的分类:了解不同的关系数据语言如关系代数、元组关系演算、域关系演算以及结构化查询语言(SQL)。
  5. SQL的特点和应用:SQL的非过程化特性、查询优化、以及其在数据定义、数据操作和数据控制中的应用。
难点
  1. 理解不同查询操作的差异与联系:特别是选择、投影、连接等操作在实际使用中的不同。
  2. 抽象的查询语言与实际应用的差异:如关系代数、关系演算与SQL之间的联系与区别。
  3. SQL的高级特性:理解SQL中的高级功能,如聚集函数、优化查询等。
  4. 查询优化的概念:理解关系数据库如何优化查询,选择最有效的存取路径。
易错点
  1. 混淆不同类型的关系操作:尤其是在查询操作中,如将选择和投影操作混淆。
  2. SQL语法和逻辑错误:在编写SQL查询时,容易出现语法或逻辑错误,特别是在进行复杂的连接和子查询时。
  3. 忽视集合操作的特性:在处理关系操作时,忘记其操作对象和结果都是集合的特性,可能导致错误的理解和结果。
  4. 过度或错误地使用SQL的高级功能:例如,不恰当地使用聚集函数或忽视查询优化的原则。

 

2.2 关系操作

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/129686.html

(0)
上一篇 2025-08-22 17:10
下一篇 2025-08-22 17:15

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信