数据库系统笔记

发布时间 2023-10-05 13:12:52作者: BeyondLimits

\[Chapter 1. \quad 绪论 \]

数据库发展史

人工管理阶段(1950) \(\Rightarrow\) 文件系统阶段(1950-1960) \(\Rightarrow\) 数据库系统阶段(1960-)

2023-10-04-20.56.35200e7c07fc9ee5ad.png

数据库管理系统(DBMS)的出现,使得数据存储、数据管理和数据应用分离。
数据库管理系统采用外模式-模式-内模式三级模式外模式/模式模式/内模式两级映象结构

2023-10-04-21.30.21.png

数据模型

定义:是数据及其联系在计算机中的表示和组织形式的描述。
组成三要素:数据结构数据操纵数据完整性约束
经典模型:层次模型(有根树),网状模型(有向图),关系模型

\[Chapter 2. \quad 关系模型 \]

关系数据结构

5.png

关系代数

A set of fundamental operations to retrieve and manipulate tuples in a relation.

These operations take one or some relations as inputs, and outputs a new relation.

并、交、差、笛卡尔积与集合运算相似。

选择(Select)

行视角,选择出符合条件的若干元祖集合。

2023-10-04-21.47.03.png

符号: \(\sigma_F(R)\)
举例: \(\sigma_{Name = 'qaq'}(R)\)
SQL写法: SELECT * FROM R WHERE Name = 'qaq'

投影(Projection)

列视角,选择出若干属性列组成新的关系。

2023-10-04-21.47.14.png

符号: \(\Pi_{A_1, A_2, ..., A_m}(R)\)
举例: \(\Pi_{Name, id}(\sigma_{Name = 'qaq'}(R))\)
SQL写法: SELECT Name, id FROM R WHERE Name = 'qaq'

投影运算会把新关系中的重复行删去(集合的不可重原则)。

连接(Join)

18.png

2023-10-04-21.54.21.png

符号: \(R \Join S _{A \theta B}\)
其中 \(A, B\)\(R\)\(S\) 上的度数相等且可比较的属性组,\(\theta\) 是比较运算符。
SQL: SELECT * FROM R JOIN S USING (ATTRIBUTE1, ATTRIBUTE2, ...)

\(\theta\)\(=\),则叫做等值连接
自然连接是一种特殊的等值连接,只不过是在等值连接的基础上去掉结果中重复的属性列。