【数据库系统原理】知识点
目录
- 1 数据库系统概述
- 1.3 数据库系统的结构
- 1.4 数据模型
- 2 关系数据库
- 2.2 关系数据模型
- 2.3 关系数据库的规范化理论
- 3 数据库设计
- 3.1 数据库设计概述
- 4 SQL与关系数据库基本操作
- 4.1 SQL概述
- 4.3 数据定义
- 4.6 视图
- 5 数据库编程
- 5.1 存储过程
- 5.2 存储函数
- 6 数据库安全与保护
- 6.3 安全性与访问控制
- 6.4 事务与并发控制
- 6.5 备份与恢复
- 7 数据库应用设计与开发实例
- 8 数据管理技术的发展
- 8.3 大数据管理技术
1 数据库系统概述
1.3 数据库系统的结构
三级模式结构:模式、外模式、内模式
1.4 数据模型
数据模型的三大要素:
数据结构、数据操作和数据约束
概念层数据模型:E-R图
逻辑层数据模型:层次模型、网状模型、关系模型(二维表)、面向对象模型
物理层数据模型
2 关系数据库
2.2 关系数据模型
关系数据库系统是
支持关系模型
的数据库系统。
关系模型的组成要素
:关系数据结构、关系操作集合和关系完整性约束
。
域
:属性的取值范围
关系模式
是静态的、稳定的,而关系
是动态的、随时间不断变化的。
每一个属性都是不可分解
的。
每一个关系仅仅有一种
关系模式。
基本的关系操作:选择σ、投影π、并U、差-、笛卡尔积×
。
- 选择σ:从指定关系中选取
满足给定条件的若干元组
组成一个新关系- 投影π:从指定关系中选取
指定的若干属性值
组成一个新关系- 并U:
- 差-:
- 笛卡尔积×:
关系完整性约束:实体、参照、用户定义- 实体完整性约束:主属性不能是空值NULL
- 参照完整性约束:
- 用户定义完整性约束
2.3 关系数据库的规范化理论
第一范式 1NF:设R为任一给定关系,如果R中每个列与行的交点处的取值都是不可再分的基本元素
第二范式 2NF:设R为任一给定关系,若R为1NF,且其所有非主属性
都完全函数依赖于候选关键字
第三范式 3NF:设R为任一给定关系,若R为2NF,且其每一个非主属性
都不传递函数依赖于候选关键字
3 数据库设计
3.1 数据库设计概述
阶段:需求分析、结构设计(概念、逻辑、物理)、行为设计、实施、运行和维护
4 SQL与关系数据库基本操作
4.1 SQL概述
SQL的组成:数据查询、数据定义DDL、数据操纵DML、数据控制DCL
- 数据定义DDL:CREATE、ALTER、DROP
- 数据操纵DML:SELECT、INSERT、UPDATE、DELETE
- 数据控制DCL:GRANT、REVOKE
4.3 数据定义
数据库模型的定义:创建 CREATE、选择 USE、修改 ALTER、删除 DROP、查看 SHOW
表定义:创建 CREATE、更新 ALTER、删除 DROP、查看 SHOW
索引定义:
索引是以文件
的形式存储的
4.6 视图
CREATE VIEW … AS SELECT …
和基本表的区别
优点:
5 数据库编程
5.1 存储过程
定义:
优点:
5.2 存储函数
与存储过程的区别:
删除:
注意事项:
6 数据库安全与保护
6.3 安全性与访问控制
数据库的安全性:保护数据库以防止不合法的使用而造成数据泄露、更改或破坏
安全管理的主要措施:使用身份验证、数据库用户权限确认等访问控制措施,来保护数据库中的信息资源,以防止这些数据遭受破坏。
6.4 事务与并发控制
事务是用户定义的一个
数据操作序列
,这些操作可作为一个完整的工作单元,要么全部执行,要么全部不执行,是一个不可分割的工作单位
事务的四个特征:ACID 原子性、一致性、隔离性、持续性
典型的并发操作问题:丢失更新、不可重复读、读“脏”数据
BEGIN TRANSACTION:
COMMIT:表示提交,即提交事务的所有操作,具体地说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束;
ROLLBACK:表示回滚,即在事务运行的过程中若发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,回滚到事务开始时的状态。
产生数据不一致的主要原因:并发操作破坏了事务的隔离性。并发控制机制就是要用正确的方式调度并发操作,使一个用户事务的执行不受其他事务的干扰,从而避免造成数据的不一致性。
解决并发操作所带来的数据不一致性问题的方法:封锁、时间戳、乐观控制法和多版本并发控制等。
6.5 备份与恢复
数据库
备份
是指通过导出数据
或者复制表文件
的方式来制作数据库的复本(SELECT INTO … OUTFILE )
数据库恢复
是当数据库出现故障或遭到破坏
时,将备份的数据库加载到系统,从而使数据库从错误状态恢复到备份时的正确状态(LOAD DATA … INFILE )
7 数据库应用设计与开发实例
8 数据管理技术的发展
8.3 大数据管理技术
NoSQL是以互联网大数据应用为背景发展起来的
分布式
数据管理系统