第1章 关系数据库标准语言——SQL 1
1.1 SQL概述 1
1.1.1 SQL的发展 1
1.1.2 SQL的特点 2
1.1.3 基本概念 3
1.2 SQL的数据定义 4
1.2.1 数据库的建立与删除 5
1.2.2 基本表的定义、删除与修改 7
1.2.3 建立与删除索引 14
1.3 SQL的数据查询 15
1.3.1 简单的选择与投影查询 15
1.3.2 连接查询 21
1.3.3 嵌套查询 25
1.3.4 集合查询 29
1.4 SQL的数据更新 30
1.4.1 插入数据 30
1.4.2 修改数据 30
1.4.3 删除数据 31
1.5 SQL的视图 32
1.5.1 定义视图 33
1.5.2 查询视图 34
1.5.3 更新视图 35
1.6 SQL的数据控制 35
1.6.1 创建用户 36
1.6.2 授权 39
1.6.3 收回权限 42
1.7 嵌入式SQL 42
1.7.1 嵌入式SQL的标志 43
1.7.2 嵌入式SQL语句与主语言之间的通信 44
1.7.3 PowerBuilder中的嵌入式SQL语句 46
1.7.4 在C#中使用SQL语句 49
习题 51
第2章 数据管理与数据库 53
2.1 数据库的常用术语 53
2.1.1 数据与信息 53
2.1.2 数据独立性 55
2.1.3 数据库系统 55
2.2 计算机数据管理技术的产生和发展 56
2.2.1 人工管理阶段 56
2.2.2 文件系统阶段 57
2.2.3 数据库系统阶段 58
2.2.4 数据库技术的发展 61
2.2.5 数据库技术的主要研究领域 62
2.3 数据模型 63
2.3.1 数据模型的构成 63
2.3.2 数据模型的分类 64
2.3.3 实体-联系(E-R)模型 66
2.3.4 常用的结构数据模型 71
2.4 数据库系统的模式结构 77
2.4.1 数据库系统模式的概念 77
2.4.2 数据库的三级模式 78
2.4.3 数据库的二级映象功能与数据独立性 79
2.5 DBMS的功能 81
2.6 数据库系统的组成 82
习题 84
第3章 关系数据库模型 86
3.1 关系模型的基本概念 86
3.1.1 关系模型概述 86
3.1.2 关系数据结构 87
3.1.3 完整性规则 90
3.2 关系代数 91
3.2.1 传统的集合运算 92
3.2.2 专门的关系运算 93
3.2.3 关系运算举例 96
3.3 关系演算 97
3.3.1 元组关系演算 98
3.3.2 域关系演算 99
3.3.3 关系运算的安全限制 100
3.4 查询优化 101
3.4.1 查询实例分析 101
3.4.2 查询处理与优化技术 103
3.4.3 关系代数等价公式 105
3.4.4 查询优化策略 107
3.4.5 查询优化计算步骤 108
习题 109
第4章 关系模式的规范化设计理论 111
4.1 问题的提出 111
4.1.1 关系模式可能存在的异常 111
4.1.2 异常原因的分析 112
4.1.3 异常问题的解决 113
4.2 关系模式的函数依赖 114
4.2.1 再论关系与关系模式 114
4.2.2 函数依赖的一般概念 114
4.2.3 候选键与主键 116
4.2.4 函数依赖的推理规则 117
4.3 关系模式的规范化 125
4.3.1 范式及其类型 126
4.3.2 第一范式(1NF) 126
4.3.3 第二范式(2NF) 127
4.3.4 第三范式(3NF) 128
4.3.5 BC范式(BCNF) 129
4.3.6 多值依赖 131
4.3.7 第四范式(4NF) 134
4.3.8 关系模式规范化步骤 135
4.4 关系模式的分解特性 136
4.4.1 模式分解中存在的问题 136
4.4.2 无损连接 137
4.4.3 无损连接的测试 138
4.4.4 保持函数依赖的分解 141
4.4.5 分解成3NF的模式集 143
4.4.6 关系模式设计原则 143
习题 144
第5章 数据库的安全与保护 146
5.1 安全与保护概述 146
5.2 数据库的安全性保护 147
5.2.1 用户鉴别 147
5.2.2 存取权限控制 148
5.2.3 视图机制 149
5.2.4 跟踪审查 149
5.2.5 数据加密存储 150
5.3 数据库的完整性保护 150
5.3.1 完整性约束的分类 150
5.3.2 完整性控制 152
5.3.3 触发器 155
5.4 数据库的并发控制技术 156
5.4.1 事务及特性 156
5.4.2 数据库的并发控制 157
5.4.3 并发的目的 158
5.4.4 并发所引起的问题 158
5.4.5 并发控制方法 160
5.4.6 并发调度的可串行性 163
5.4.7 时标技术 166
5.5 数据库的恢复技术 167
5.5.1 故障的种类 167
5.5.2 恢复技术 169
5.5.3 检查点机制 172
5.6 数据库的复制与相关技术 173
5.6.1 数据库的复制 173
5.6.2 数据库的镜像 174
5.6.3 RAID技术简介 174
习题 176
第6章 数据库设计与实施 177
6.1 数据库设计概述 177
6.1.1 数据库设计的概念 177
6.1.2 数据库设计的步骤 178
6.1.3 数据库设计的特点 179
6.2 数据库规划 180
6.3 需求分析 180
6.3.1 需求分析的任务 181
6.3.2 需求分析的步骤 181
6.3.3 数据字典 184
6.4 概念结构设计 186
6.4.1 基本方法 186
6.4.2 主要设计步骤 187
6.5 逻辑结构设计 191
6.5.1 E-R模式到关系模式的转换 191
6.5.2 关系模式的优化 193
6.6 物理结构设计 195
6.6.1 聚簇设计 196
6.6.2 索引设计 196
6.6.3 分区设计 196
6.7 数据库的实施和维护 197
6.7.1 数据库的建立与调整 197
6.7.2 数据库系统的试运行 198
6.7.3 数据库系统的运行和维护 198
习题 199
第7章 数据库应用系统开发 201
7.1 数据库应用系统的结构 201
7.1.1 单用户结构 202
7.1.2 集中式结构 202
7.1.3 二层客户机/服务器结构 203
7.1.4 三层客户机/服务器结构 204
7.1.5 多层结构 205
7.2 Microsoft SQL Server 2008 207
7.2.1 SQL Server发展简史 207
7.2.2 SQL Server 2008的版本 209
7.2.3 SQL Server 2008的基本操作 210
7.2.4 SQL Server 2008的安全性管理 214
7.2.5 SQL Server的完整性策略 216
7.2.6 SQL Server的恢复技术 218
7.2.7 SQL Server数据库的备份和恢复 220
7.2.8 SQL Server的并发控制 220
7.2.9 数据库编程 223
7.3 数据库应用系统实例 225
7.3.1 常见的数据库访问技术 226
7.3.2 Microsoft Visual Studio 2008 228
7.3.3 一个数据库应用系统实例 231
习题 259
第8章 数据库技术新发展 260
8.1 数据库家族概述 260
8.2 面向对象数据库技术 261
8.2.1 面向对象方法学简介 261
8.2.2 面向对象数据模型 262
8.2.3 面向对象数据库管理系统 266
8.3 分布式数据库 273
8.3.1 分布式数据库系统的产生 273
8.3.2 分布式数据库系统的定义 274
8.3.3 分布式数据库系统的主要特点 275
8.3.4 分布式数据库系统的模式结构 278
8.3.5 分布式数据库管理系统及其分类 279
8.3.6 分布式数据库系统的优缺点 281
8.4 XML数据库技术 282
8.4.1 XML概述 282
8.4.2 XML基础知识 287
8.4.3 XML数据库 293
8.5 数据仓库与数据挖掘 295
8.5.1 数据的事务处理与分析处理 295
8.5.2 数据仓库的概念 296
8.5.3 数据仓库数据的基本特征 297
8.5.4 数据仓库系统的组成 298
8.5.5 数据仓库数据的组织 299
8.5.6 数据仓库工具 300
8.5.7 数据挖掘工具 305
习题 315
参考文献 317