计算机考研复试数据库核心知识点整理
一、数据库基础概念
1. 数据库系统特点
- 数据结构化:整体结构化,用数据模型描述
- 共享性高冗余低:多用户共享,减少数据冗余
- 数据独立性:物理独立性(存储结构变化不影响逻辑)和逻辑独立性(模式变化不影响应用)
- 统一管理:由DBMS统一管理数据安全性、完整性、并发控制等
2. 三级模式与二级映射
- 三级模式:
- 外模式:用户视图(局部数据逻辑结构)
- 模式:全局数据逻辑结构(全体数据的逻辑描述)
- 内模式:物理存储结构
- 二级映射:
- 外模式/模式:保证逻辑独立性
- 模式/内模式:保证物理独立性
3. 数据库 vs 文件系统
- 文件系统缺点:冗余高、独立性差、无结构、安全性弱
- 数据库优势:结构化、共享性高、独立性好、统一管理
二、关系数据库核心
1. 关系模型三要素
- 数据结构:二维表
- 数据操作:关系代数(选择、投影、连接等)
- 完整性约束:实体、参照、用户定义完整性
2. 完整性约束
- 实体完整性:主键非空且唯一
- 参照完整性:外键必须为其他表主键或空值
- 用户定义完整性:如性别只能取"男/女"
3. 连接操作
- 等值连接 vs 自然连接:
- 自然连接自动去重属性,必须有相同属性
- 等值连接保留重复列,属性可不相同
4. 范式理论
- 1NF:属性不可再分
- 2NF:消除非主属性对主属性的部分依赖
- 3NF:消除非主属性对主属性的传递依赖
- BCNF:消除主属性对码的部分/传递依赖
三、SQL与数据库设计
1. SQL特点
- 综合统一(DDL/DML/DCL)
- 高度非过程化
- 面向集合操作
2. 视图(View)
- 定义:虚表,数据来自基本表
- 作用:
- 简化复杂查询
- 数据安全(隐藏敏感字段)
- 逻辑独立性
3. 索引
- 类型:
- B+树索引:适合范围查询
- Hash索引:适合等值查询
- 优缺点:
四、事务与并发控制
1. 事务ACID特性
- 原子性:全做或全不做
- 一致性:事务前后数据状态合法
- 隔离性:事务间互不干扰
- 持久性:提交后永久生效
2. 并发问题
- 丢失修改:后提交覆盖前提交
- 脏读:读取未提交的无效数据
- 不可重复读:同一事务两次读取结果不同
- 幻读:范围查询结果数量变化
3. 封锁协议
- 锁类型:
- 封锁协议:
- 一级:写锁到事务结束(防丢失修改)
- 二级:读锁立即释放(防脏读)
- 三级:读锁到事务结束(防不可重复读)
五、数据库安全与恢复
1. 安全技术
- 存取控制:自主存取(DAC)、强制存取(MAC)
- 审计:记录操作日志
- 加密:数据传输与存储加密
2. 恢复技术
- 日志文件:记录事务操作(先写日志后写库)
- 故障恢复策略:
- 事务故障:UNDO回滚
- 系统故障:UNDO+REDO
- 介质故障:重装备份+日志恢复
六、高频考点速记
- E-R图设计:实体(矩形)、属性(椭圆)、联系(菱形)
- 存储过程:预编译SQL集合,提高执行效率
- 游标:用于逐行处理查询结果
- 触发器:事件驱动的特殊过程,用于完整性约束
- 数据库设计步骤:需求分析→概念设计→逻辑设计→物理设计→实施→维护