第1章 绪论 1
1.1 从身边的数据库应用说起 1
1.2 数据管理的发展过程 3
1.2.1 人工管理阶段 3
1.2.2 文件系统管理阶段 3
1.2.3 数据库系统管理阶段 6
1.3 数据的抽象与描述 7
1.3.1 数据抽象的过程 7
1.3.2 数据抽象的模型 8
1.3.3 完整的模型映射 11
1.4 数据库系统概述 12
1.4.1 数据库的基本概念 12
1.4.2 数据库的体系结构 16
1.4.3 数据库管理系统的分类 18
1.4.4 数据库系统分类 21
1.5 本书应用实例介绍 23
本章小结 28
本章习题 28
第2章 关系模型及关系运算理论 30
2.1 关系模型 30
2.1.1 关系模型概述 30
2.1.2 关系数据结构 32
2.1.3 完整性规则 37
2.2 关系代数 38
2.2.1 传统的集合运算 38
2.2.2 专门的关系运算 40
2.2.3 关系运算举例 43
2.3 关系演算 46
2.3.1 元组关系演算 46
2.3.2 域关系演算 48
2.4 查询优化 50
2.4.1 查询优化问题的提出 50
2.4.2 查询处理与优化技术 52
2.4.3 关系代数表达式等价变化规则 55
2.4.4 查询优化算法 57
本章小结 60
本章习题 61
第3章 SQL语言 65
3.1 Transact-SQL语言简介 65
3.2 数据定义语言DDL 66
3.3 数据查询语言DQL 70
3.4 数据操纵语言DML 86
3.5 视图 87
3.6 游标 89
3.6.1 游标的概念 89
3.6.2 游标的使用方法 90
3.7 存储过程 98
3.7.1 存储过程的概念 98
3.7.2 存储过程的使用方法 99
3.8 触发器 105
3.8.1 触发器的概念 105
3.8.2 触发器的使用方法 106
本章小结 113
本章习题 114
第4章 关系数据库的规范设计 117
4.1 关系模式设计中的问题 118
4.2 数据依赖 119
4.2.1 函数依赖基本概念 119
4.2.2 一些术语和符号 120
4.3 数据依赖的公理系统 121
4.3.1 Armstrong公理系统 122
4.3.2 闭包 122
4.3.3 闭包的计算 123
4.3.4 函数依赖的等价 123
4.3.5 函数依赖的最小化 124
4.4 关系模式的分解特性 125
4.5 关系模式的范式 127
4.5.1 关系模式中的码 128
4.5.2 范式 129
本章小结 134
本章习题 135
第5章 数据库设计 137
5.1 数据库设计概述 137
5.2 需求分析 140
5.2.1 需求分析的内容 140
5.2.2 需求分析的方法 141
5.3 概念设计 147
5.3.1 E-R模型概述 148
5.3.2 基于E-R模型的概念结构设计方法与步骤 153
5.3.3 局部E-R模型设计 154
5.3.4 全局E-R模型设计 158
5.3.5 全局E-R模型的优化 161
5.3.6 虾苗苗种投放管理系统的E-R模型设计 163
5.4 数据库概念模型到逻辑模型的转换 165
5.4.1 E-R图向关系模型的初始化转换 166
5.4.2 关系模式的规范化 170
5.4.3 关系模式的评价与改进 170
5.4.4 虾苗苗种投放管理系统的关系模型设计 172
5.5 物理设计 173
5.5.1 确定数据库的物理结构 174
5.5.2 数据库物理结构的评价 176
5.6 数据库的实施和运行维护 176
5.6.1 数据库实施 176
5.6.2 数据库运行维护 177
本章小结 179
本章习题 179
第6章 事务管理与数据库安全保护 181
6.1 事务 181
6.1.1 事务的特性 181
6.1.2 事务的分类 182
6.2 数据库的并发控制 182
6.2.1 并发操作引起数据的不一致性 182
6.2.2 并发控制措施 184
6.2.3 锁的模式 185
6.2.4 锁的粒度 187
6.2.5 死锁 187
6.3 数据库安全保护 188
6.3.1 数据库安全概念与内涵 188
6.3.2 数据库的安全策略 189
6.3.3 数据库安全机制 190
6.3.4 数据库安全管理的集中控制与分散控制 213
6.3.5 提升数据库系统安全的实现途径 213
6.3.6 数据库安全的发展趋势 215
6.4 备份与恢复 215
6.4.1 数据库备份恢复机制 216
6.4.2 影响备份与恢复策略的主要因素 219
本章小结 221
本章习题 221
第7章 数据库应用案例 223
7.1 案例概述 224
7.1.1 案例背景与需求 224
7.1.2 案例开发采用的技术路线 225
7.1.3 案例的数据库设计 225
7.2 数据库应用程序开发概述 227
7.2.1 数据库应用程序的开发流程 228
7.2.2 数据库应用系统的体系结构 228
7.2.3 .NET框架与C#程序设计语言 230
7.3 数据库访问技术 231
7.3.1 数据库访问技术概述 231
7.3.2 ADO.NET数据访问组件 234
7.3.3.NET应用程序中的数据库读写 237
7.4 系统设计 242
7.4.1 模块功能说明 243
7.4.2 虾苗检验和投放流程 243
7.5 应用程序的实现 244
7.5.1 C/S应用程序的实现 244
7.5.2 B/S应用程序的实现 258
本章小结 265
本章习题 266
章节习题参考答案 267
参考文献 274