内容简介
第1章 数据库系统概论
1.1 数据库系统的作用
1.1.1 数据与数据管理
1.1.2 数据管理技术的产生与发展
1.1.3 数据库应用
1.2 数据模型
1.2.1 数据模型的分层
1.2.2 数据模型的组成要素
1.2.3 层次模型
1.2.4 网状模型
1.2.5 关系模型
1.3 数据抽象与数据库三级模式
1.3.1 数据抽象
1.3.2 数据库三级模式结构及两层映像
1.3.3 数据库三级模式与三层模型的联系和区别
1.4 数据库系统
1.4.1 数据库系统组成
1.4.2 数据库管理系统
1.4.3 数据库系统的相关人员
本章小结
习题1
第2章 关系模型与关系代数
2.1 关系模型
2.1.1 关系数据结构
2.1.2 关系完整性约束
2.1.3 关系操作
2.2 关系代数
2.2.1 传统的集合运算
2.2.2 专门的关系运算
2.2.3 关系代数查询综合举例
本章小结
习题2
第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.2.3 排序运算
3.2.4 查询表
3.2.5 聚合查询
3.3 连接查询
3.3.1 等值与非等值连接
3.3.2 自表连接
3.3.3 外连接
3.4 嵌套子查询
3.4.1 使用IN的子查询
3.4.2 使用比较运算符的子查询
3.4.3 使用存在量词EXISTS的子查询
3.4.4 复杂子查询实例
3.5 集合运算
3.6 SQL查询一般格式
本章小结
习题3
第4章 数据库建模
4.1 数据库设计过程
4.2 E-R模型基本概念及表示
4.2.1 实体与实体集
4.2.2 属性
4.2.3 联系与联系集
4.3 约束
4.3.1 映射约束
4.3.2 码约束与联系集的属性安置
4.3.3 依赖约束
4.3.4 参与约束
4.3.5 多值联系
4.4 弱实体集
4.5 扩展E-R特征
4.6 E-R建模问题
4.6.1 E-R建模的基本原则
4.6.2 依赖约束的建模
4.6.3 多值联系的建模
4.7 数据库概念设计实例——大学选课系统
4.7.1 概念设计任务
4.7.2 系统需求分析
4.7.3 数据库概念设计
4.8 逻辑设计——E-R模型转化为关系模型
4.8.1 E-R模型转化方法
4.8.2 大学选课系统E-R模型转化实例
本章小结
习题4
第5章 关系数据理论与模式求精
5.1 问题提出
5.2 函数依赖定义
5.3 范式
5.3.1 第一范式(1NF)——码
5.3.2 第二范式(2NF)——全部是码
5.3.3 第三范式(3NF)——仅仅是码
5.3.4 Boyce-Codd范式(BCNF)
5.4 函数依赖理论
5.4.1 函数依赖集闭包
5.4.2 属性集闭包
5.4.3 正则覆盖
5.4.4 无损连接分解
5.4.5 保持依赖分解
5.5 模式分解算法
5.5.1 BCNF分解算法
5.5.2 3NF分解算法
5.6 数据库模式求精
本章小结
习题5
第6章 关系数据库设计实例——网上书店
6.1 系统需求分析
6.1.1 需求概述和系统边界
6.1.2 主要业务处理流程
6.1.3 功能需求分析
6.1.4 数据需求分析
6.1.5 业务规则及完整性约束分析
6.2 数据库概念设计
6.2.1 确定基本实体集及属性
6.2.2 主要业务局部概念建模
6.2.3 定义联系集及属性
6.2.4 完整E-R模型
6.2.5 检查是否满足需求
6.3 数据库逻辑设计
6.4 模式求精
本章小结
习题6
第7章 SQL数据定义、更新及数据库编程
7.1 SQL数据定义语言
7.1.1 数据库的定义
7.1.2 基本表的定义
7.1.3 索引的定义
7.2 SQL数据更新语言
7.2.1 插入数据
7.2.2 删除数据
7.2.3 修改数据
7.3 视图
7.3.1 定义视图
7.3.2 查询视图
7.3.3 视图更新
7.3.4 删除视图
7.4 T-SQL语言简介
7.4.1 表达式
7.4.2 函数
7.4.3 流程控制语句
7.5 游标
7.5.1 游标的定义与使用
7.5.2 当前游标集的修改与删除
7.6 存储过程
7.6.1 创建存储过程
7.6.2 执行存储过程
7.6.3 修改和删除存储过程
7.7 触发器
7.7.1 创建触发器
7.7.2 修改和删除触发器
本章小结
习题7
第8章 数据库存储结构与查询处理
8.1 文件组织与记录组织
8.1.1 存储介质
8.1.2 存储访问
8.1.3 文件组织与文件中记录的组织
8.2 索引与散列
8.2.1 索引基本概念
8.2.2 顺序索引
8.2.3 B+树索引
8.2.4 散列
8.3 查询处理
8.3.1 查询处理过程
8.3.2 查询代价度量
8.3.3 选择运算
8.3.4 连接运算
8.3.5 其他运算
8.3.6 表达式计算
8.4 查询优化
8.4.1 查询优化实例
8.4.2 关系表达式转换
8.4.3 查询优化策略
8.5 物理数据库设计
本章小结
习题8
第9章 数据库安全性与完整性
9.1 数据库安全性
9.1.1 数据库安全概述
9.1.2 SQL Server安全机制
9.1.3 触发器实现安全性
9.2 数据库完整性
9.2.1 数据库完整性概述
9.2.2 SQL Server完整性
9.2.3 使用规则和触发器实现完整性
9.3 数据库应用与安全设计
9.3.1 数据库安全性控制
9.3.2 数据库完整性控制
9.3.3 存储过程设计
本章小结
习题9
第10章 事务管理与恢复
10.1 事务
10.1.1 问题背景
10.1.2 事务概念
10.1.3 事务特性
10.1.4 事务并发执行与调度
10.1.5 事务调度及正确性准则
10.2 并发控制
10.2.1 基于封锁的协议
10.2.2 两阶段封锁协议
10.3 恢复与备份
10.3.1 故障分类及恢复策略
10.3.2 事务访问数据方式
10.3.3 基于日志的故障恢复策略
10.3.4 检查点
10.3.5 备份与介质故障恢复
本章小结
习题10
第11章 数据库应用开发
11.1 数据库系统的体系结构
11.1.1 软件开发体系结构概述
11.1.2 C/S体系结构
11.1.3 B/S体系结构
11.1.4 C/S与B/S结构的结合
11.1.5 常用开发体系结构
11.2 数据库访问技术
11.2.1 ODBC API和ODBC库
11.2.2 MFC DAO
11.2.3 RDO
11.2.4 OLE DB
11.2.5 ADO
11.2.6 ADO.NET
11.2.7 JDBC
11.2.8 数据库访问技术小结
11.3 对象-关系映射框架
本章小结
习题11
第12章 数据管理技术前沿
12.1 大数据的兴起
12.1.1 大数据的概念
12.1.2 从数据库到大数据
12.1.3 大数据处理模式
12.2 大数据处理平台和框架
12.2.1 Apache Hadoop
12.2.2 Spark
12.2.3 Storm
12.3 数据库面临的挑战
12.3.1 MySpace数据库架构变化
12.3.2 数据库可扩展性问题的解决方法
12.3.3 数据库的发展
12.4 NoSQL数据库
12.4.1 键值数据库Redis
12.4.2 文档数据库MongoDB
12.4.3 列数据库HBase
12.4.4 图数据库Neo4j
12.5 NewSQL数据库
12.5.1 VoltDB
12.5.2 NuoDB
本章小结
习题12
参考文献