引言
基本概念
- 数据库: 按一定的组织形式存储在一起的相互关联的数据的集合
- 数据库管理系统: 数据库系统的核心部分, 主要目标是提供一个可以方便, 高效地存取数据库信息的途径
- 数据库系统: 一些相互关联的数据以及一组使得用户可以访问和修改这些数据的程序的集合
数据视图
数据模型
- 数据模型: 一个描述数据, 数据联系, 数据语义, 以及一致性约束的概念工具的集合
- 关系模型: 用表的集合来表示数据和数据间的联系
表也称关系, 每个表有多行多列, 每列有唯一的列名, 每行为一条记录
- 实体-联系模型: 实体-联系(Entity-Relationship, E-R)数据模型, 描述实体对象以及它们之间的联系
- 半结构化数据模型: 允许在其数据定义中某些相同类型的数据向含有不同的属性集
- 基于对象的数据模型: 面向对象的程序设计的发展->面向对象的概念整合到关系数据库中
关系数据模型
使用最广泛的数据模型, 以表的形式组织数据
数据抽象
物理层: 最低层次的抽象, 详细描述复杂的底层数据结构(实际上是怎么存储的)
逻辑曾: 描述数据库中存储什么数据以及这些数据之间存在什么联系
视图层: 最高层次的抽象, 只描述用户感兴趣的数据, 隐藏其余数据的细节
物理模式: 在物理层描述数据库的设计
逻辑模式: 在逻辑层描述数据库的设计
子模式(视图模式): 在视图层描述数据库的设计
数据库语言
数据定义语言(DDL)
用于定义数据模式
sql
create table Student(
SId int,
SName char(20),
SAge int,
SSex char(2),
primary key(SId)
);数据操作语言(DML)
用于检索和修改数据库中的数据
sql
insert into Student values(1, 'Alice', 20, 'F');
update Student set SAge = 21 where SId = 1;
delete from Student where SId = 1;
select * from Student where SAge > 18;数据库设计
主要内容是 数据库模式的设计
数据库引擎(核心组件)
存储管理器
- 负责数据库中数据的存储, 检索和更新
查询处理器
- 负责数据检索
事务管理
- 负责完成原子性, 一致性功能的操作