概述
根据本年2019数据库复习要点整理,书籍为《数据库系统概论》(第五版,王珊、萨师煊)
第1章 绪论
1.数据库的四个基本概念(简述)
- 数据(data):描述事物的符号记录
- 数据库(DataBase,DB):长期存储在计算机内,有组织的、可共享的大量数据的集合。
- 数据库管理系统(DataBase Management,DBMS):位于用户和操作系统中间的一层数据管理软件,科学高效的组织、存储、维护数据。
- 数据库系统(Database System , DBS):由数据库、数据库管理系统、数据库管理员、应用程序组成的存储、管理、维护数据的系统
2.数据库管理系统的主要功能(简述)
- 数据的组织、存储、管理、维护
3.数据库技术的发展阶段(简述)
- 人工管理,文件系统,数据库系统
4.数据库系统的主要特点(简述)
- 数据结构化
- 数据共享性高,冗余度低,易扩充
- 数据独立性高
- 数据由DBMS统一管理和控制
5.数据模型的层次(简述)
- 第一层:概念模型,将现实世界抽象为信息世界
- 第二层:逻辑模型和物理模型,将信息世界抽象为机器世界
6.数据模型的组成要素(简述)
- 数据结构
- 数据操作
- 数据的完整性约束
7.信息世界中的基本概念(掌握)
- 实体(Entity):客观存在并可以相互区别的“事物”
- 属性(Attributes):实体的某一特性
- 实体集(Entity Set):同型实体的集合称为实体集
- 键(Key):能唯一标识一个实体的属性或属性集
- 联系(Relationship):反应实体间的相互关系
8.实体间联系的类型(掌握)
- 一对一联系(1 : 1)
- 一对多联系(1 : n)
- 多对多(m : n)
9.ER模型(掌握)
- 参考2019夏令营软件设计(一):设计流程小结中第三步类设计的ER图
10.关系模型的数据结构及相关术语(理解)
- 关系模型数据结构:二维表
- 相关术语:
-
关系:就是二维表
-
元组:表中的每一行数据,相当于一个记录值
-
属性:表中每一列是一个属性值的集合
-
码:表中用来唯一确定一个元组的一个属性或最小属性组
-
域:属性的取值范围
-
分量:元组中的一个属性值
-
关系模式:对关系的描述,一般格式为
关系名(属性1, 属性2, 属性3, ···) 例如: 学生(学号, 姓名, 年龄, 性别, 年级, 专业)
-
11.关系模型的优缺点(简述)
- 优点:
- 建立在严格的数学概念基础上
- 概念单一
- 存储路径对用户透明,所以数据独立性更高、安全保密性更好、简化了程序员的工作和数据库开发建立
- 缺点:
- 查询效率较低
- DBMS需要对用户查询进行优化,增加了开发DBMS的难度
12.数据库系统的三级模式结构(理解、简述)
- 模式(逻辑模式、概念模式):全体数据的逻辑结构和特征描述
- 外模式(用户模式):数据库用户能看到的局部数据的逻辑结构和特征描述
- 内模式(存储模式):数据物理结构和存储方式的描述
13.数据库的二级映像与数据独立性(理解、简述)
-
外模式 / 模式映像:对于每一个外模式,数据库系统都有一个外模式/模式映像,它定义了该外模式与模式之间的对应关系,保证了数据与程序的逻辑独立性。
-
模式 / 内模式映像:定义了数据库的全局逻辑结构与存储结构之间的对应关系,保证了数据与程序的物理独立性。
第2章 关系数据库
1.关系数据结构的形式化定义(掌握)
-
关系模型的数据结构——关系,是一张扁平的二维表
-
域:一组有相同数据类型的值的集合
-
笛卡尔积
-
理解:两个关系做笛卡尔积,就是两个表
R1
和R2
,R1
中的每一条数据与R2
中的每一条数据组合,形成的新的表就是笛卡尔积的结果 -
举例
-
-
关系:
D1xD2x...xDn
的子集叫做叫做在域D1,D2,...,Dn
上的关系,表示为R(D1,D2,...,Dn)
- R表示关系的名字,n是关系的目或度(degree)。
2.关系数据语言的分类(简述)
- 关系代数:用对关系的运算来表达查询要求。
- 关系演算:用谓词来表达查询要求。
- SQL:是集查询、数据定义语言、数据操纵语言、和数据控制语言于一体的关系数据语言,是一种高度非过程化的语言。
3.关系的完整性(理解、简述)
- 关系模型的完整性规则是对关系的某种约束条件
- 实体完整性:主属性不能为空值
- 参照完整性:设F是基本关系R的非码属性,K是关系S的主码,如果F和K相对应,那么F是关系R的外码
- 用户自定义完整性:用户可以根据实际状况自定义约束条件
4.关系代数(掌握运用)
名称 | 符号 | 说明 |
---|---|---|
选择 | σ | 类似于 SQL 中的 where |
投影 | Π | 类似于 SQL 中的 select |
并 | ∪ | 类似于 SQL 中的 union |
集合交(附加) | ∩ | SQL中没有对应的操作符 |
集合差 | - | SQL中没有对应的操作符 |
自然连接(附加) | ⋈ | 类似于 SQL 中的 inner join |
笛卡尔积 | × | 类似于 SQL 中不带 on 条件的 inner join |
第3章 关系数据库语言
1.SQL的基本概念(简述)
-
是一种特定目的程序语言,用于管理关系数据库管理系统,或在关系流数据管理系统中进行流处理。
-
SQL基于关系代数和元组关系演算,SQL的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制
2.基本表的定义(掌握)
-
格式
CREATE TABLE <表名>( <列名> <数据类型> [列级完整性约束条件], <列名> <数据类型> [列级完整性约束条件], ... [表级完整性约束条件] );
-
举例
CREATE TABLE Nation(/*国家表*/ nationkey INTEGER PRIMARY KEY, /*国家编号*/ name CHAR(25), /*国家名称*/ regionkey INTEGER REFERENCES Region(regionkey