第1章 数据库系统概论
1.1 数据库系统的应用及其研究领域
1.2 数据库系统概述
1.2.1 数据库的基本概念和相关术语
1.2.2 数据库技术的产生和发展
1.2.3 数据库系统的特点
1.3 数据模型
1.3.1 概念模型
1.3.2 数据模型
1.4 数据库系统的结构与组成
1.4.1 数据库系统的体系结构
1.4.2 数据库系统的模式结构
1.4.3 数据库系统的一般组成
1.5 数据库语言
1.5.1 四大数据库语言
1.5.2 结构化查询语言SQL
1.6 数据库系统的发展趋势及前沿技术
1.7 习题
第2章 关系数据模型
2.1 数据模型
2.1.1 概述
2.1.2 概念模型
2.1.3 数据模型的基本要素
2.1.4 数据模型的发展
2.2 关系数据模型
2.2.1 基本概念
2.2.2 关系数据模型的数据结构
2.2.3 数据操作
2.2.4 数据约束
2.2.5 关系数据模型的优缺点
2.3 关系
2.3.1 域、笛卡儿积和关系
2.3.2 关系的性质
2.3.3 关系模式
2.3.4 关系完整性
2.4 关系代数和关系演算
2.4.1 关系代数
2.4.2 关系演算
2.5 习题
第3章 关系数据库标准语言SQL
3.1 SQL简介
3.1.1 SQL的发展史
3.1.2 SQL提供的功能
3.1.3 SQL的特点
3.2 数据定义
3.2.1 数据库的创建、修改与删除
3.2.2 基本表的定义、修改与删除
3.3 数据查询
3.3.1 格式
3.3.2 简单查询
3.3.3 连接查询
3.3.4 用TOP限制结果集
3.3.5 嵌套查询
3.3.6 集合查询
3.4 数据更新
3.4.1 插入
3.4.2 修改
3.4.3 删除
3.5 视图
3.5.1 视图的基本概念
3.5.2 视图的定义与删除
3.5.3 视图的查询
3.5.4 视图的更新
3.5.5 视图的作用
3.6 索引
3.6.1 索引的概念
3.6.2 索引的分类
3.6.3 索引的创建与删除
3.6.4 建立索引的原则
3.7 习题
第4章 完整性约束
4.1 数据库完整性概述
4.2 完整性约束的分类
4.3 完整性约束的定义
4.3.1 Primary Keys约束
4.3.2 UNIQUE 约束
4.3.3 NOT NULL约束
4.3.4 CHECK约束
4.3.5 Foreign-Key约束
4.3.6 域约束
4.3.7 断言
4.4 完整性约束的修改
4.4.1 约束的命名
4.4.2 约束的修改
4.5 完整性约束的验证
4.6 数据库产品对完整性的支持
4.6.1 Oracle的完整性约束
4.6.2 DB2的完整性约束
4.6.3 SQL Server 2000的完整性约束
4.7 习题
第5章 数据库安全
5.1 计算机安全概述
5.2 数据库安全性控制
5.3 自主访问控制(DAC)
5.3.1 权限
5.3.2 授权
5.3.3 授权图
5.3.4 授权和视图
5.3.5 角色
5.3.6 收回权限
5.4 强制访问控制(MAC)
5.5 跟踪审计
5.6 数据库安全性的其他技术
5.6.1 数据加密
5.6.2 鉴定
5.7 习题
第6章 数据库恢复技术
6.1 事务概念
6.2 数据库恢复概述
6.3 恢复的实现技术
6.3.1 日志
6.3.2 更新事务的执行与恢复
6.3.3 检查点
6.3.4 数据转储
6.4 故障的种类及恢复策略
6.4.1 故障的分类
6.4.2 不同故障的恢复策略
6.5 RAID
6.5.1 RAID的优点
6.5.2 RAID的分级
6.5.3 RAID级别的选择
6.5.4 RAID的应用
6.6 习题
第7章 并发控制
7.1 事务的并发执行
7.2 并发执行可能引起的问题
7.3 可串行化
7.3.1 串行调度
7.3.2 可串行化调度
7.3.3 可恢复性
7.4 基于锁的并发控制协议
7.4.1 封锁
7.4.2 两段锁协议(2PL)
7.4.3 锁的升级及更新锁
7.5 活锁与死锁
7.5.1 活锁
7.5.2 死锁的形成
7.5.3 死锁的预防
7.5.4 死锁的检测及处理
7.6 多粒度封锁
7.7 习题
第8章 关系数据库设计理论
8.1 关系模式设计中的问题
8.2 函数依赖
8.2.1 函数依赖的定义
8.2.2 FD的逻辑蕴涵
8.2.3 FD的Armstrong公理
8.2.4 函数依赖与码的联系
8.2.5 属性集的闭包
8.2.6 FD推理规则的完备性
8.2.7 FD集的最小依赖集
8.3 模式分解
8.3.1 模式分解问题
8.3.2 无损分解
8.3.3 保持函数依赖的分解
8.3.4 模式分解与模式等价问题
8.4 规范化
8.4.1 第一范式(1NF)
8.4.2 第二范式(2NF)
8.4.3 第三范式(3NF)
8.4.4 BC范式(BCNF)
8.4.5 模式设计的原则
8.5 多值函数依赖与4NF
8.5.1 多值函数依赖
8.5.2 FD与MVD的推理规则集
8.5.3 4NF
8.6 连接依赖和5NF
8.7 本章小结
8.8 习题
第9章 数据库设计方法
9.1 数据库设计概述
9.1.1 数据库的设计方法
9.1.2 数据库开发生命周期方法
9.1.3 数据库设计的基本过程
9.2 数据库需求分析
9.2.1 需求描述与分析
9.2.2 需求分析的步骤
9.2.3 数据字典
9.3 概念数据库设计
9.3.1 概念数据库设计的必要性
9.3.2 概念设计的方法和步骤
9.3.3 概念设计工具:E-R图
9.4 数据库逻辑结构设计及优化
9.4.1 逻辑设计环境
9.4.2 E-R模式向关系模型的转换
9.4.3 用关系规范化理论对关系数据
模型进行优化
9.5 数据库的物理设计
9.5.1 数据库的物理结构确定
9.5.2 物理结构的评价
9.6 数据库的实施和运行维护
9.6.1 实际数据库结构的建立
9.6.2 装入数据
9.6.3 应用程序开发和调试
9.6.4 数据库试运行
9.6.5 数据库运行和维护
9.7 习题
第10章 数据库高级开发技术
10.1 游标
10.1.1 游标种类
10.1.2 游标操作
10.2 存储过程
10.2.1 存储过程的概念
10.2.2 存储过程的种类
10.2.3 存储过程的操作
10.3 函数
10.3.1 SQL中函数的概念
10.3.2 函数类型
10.3.3 函数的操作
10.4 触发器
10.4.1 触发器的概念
10.4.2 触发器的作用
10.4.3 触发器的工作过程
10.4.4 触发器的操作
10.5 嵌入式SQL
10.5.1 ESQL的处理过程
10.5.2 ESQL与主语言之间的通信
10.5.3 ESQL的使用规定
10.5.4 ESQL的使用技术
10.6 数据库的连接访问
10.6.1 ODBC
10.6.2 JDBC
10.7 XML数据库
10.7.1 XML数据模型
10.7.2 XML数据库
10.8 本章小结
10.9 习题
第11章 数据仓库技术
11.1 商业智能
11.1.1 商业智能是什么
11.1.2 商业智能过程
11.1.3 商业智能的