第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 数据库的建立与删除 4
1.2.2 基本表的定义、删除与修改 8
1.2.3 建立与删除索引 13
1.3 SQL的数据查询 14
1.3.1 简单的选择与投影查询 14
1.3.2 连接查询 21
1.3.3 嵌套查询 24
1.3.4 集合查询 28
1.4 SQL的数据更新 29
1.4.1 插入数据 29
1.4.2 修改数据 30
1.4.3 删除数据 30
1.5 SQL的视图 31
1.5.1 定义视图 32
1.5.2 查询视图 33
1.5.3 更新视图 34
1.6 SQL的数据控制 35
1.6.1 授权 35
1.6.2 收回权限 37
1.7 嵌入式SQL 38
1.7.1 嵌入式SQL的介绍 38
1.7.2 嵌入式SQL语句与主语言之间的通信 39
1.7.3 PowerBuilder中的嵌入式SQL语句 40
1.7.4 在Delphi中使用SQL语句 44
1.7.5 在VB中使用SQL语句 46
习题 47
第2章 数据管理与数据库 49
2.1 数据库的常用术语 49
2.1.1 数据与信息 49
2.1.2 数据独立性 50
2.1.3 数据库系统 51
2.2 计算机数据管理技术的产生和发展 51
2.2.1 人工管理阶段 52
2.2.2 文件系统阶段 53
2.2.3 数据库系统阶段 54
2.2.4 数据库技术的发展 56
2.2.5 数据库技术的主要研究领域 58
2.3 数据模型 58
2.3.1 数据模型的构成 59
2.3.2 数据模型的分类 59
2.3.3 实体-联系(E-R)模型 61
2.3.4 常用的结构数据模型 67
2.4 数据库系统的模式结构 72
2.4.1 数据库系统模式的概念 72
2.4.2 数据库的三级模式 73
2.4.3 数据库的二级映象功能与数据独立性 74
2.5 DBMS的功能 76
2.6 数据库系统的组成 77
习题 79
第3章 关系数据库模型 81
3.1 关系模型的基本概念 81
3.1.1 关系模型概述 81
3.1.2 关系数据结构 82
3.1.3 完整性规则 85
3.2 关系代数 86
3.2.1 传统的集合运算 86
3.2.2 专门的关系运算 87
3.2.3 关系运算举例 91
3.3 关系演算 92
3.3.1 元组关系演算 92
3.3.2 域关系演算 93
3.3.3 关系运算的安全限制 94
3.4 三种关系查询语言 95
3.4.1 基于关系代数的语言——ISBL 96
3.4.2 元组关系演算语言——ALPHA 97
3.4.3 域关系演算语言——QBE 100
3.5 查询优化 103
3.5.1 查询优化概述 103
3.5.2 查询实例分析 105
3.5.3 查询优化的一般策略 106
3.5.4 关系代数的等价公式 107
3.5.5 查询优化的一般步骤 108
习题 109
第4章 关系模式的规范化设计理论 112
4.1 问题的提出 112
4.1.1 关系模式可能存在的异常 112
4.1.2 异常原因分析 113
4.1.3 异常问题的解决 114
4.2 关系模式的函数依赖 115
4.2.1 再论关系与关系模式 115
4.2.2 函数依赖的一般概念 115
4.2.3 候选键与主键 117
4.2.4 函数依赖的推理规则 118
4.3 关系模式的规范化 126
4.3.1 范式及其类型 126
4.3.2 第一范式(1NF) 127
4.3.3 第二范式(2NF) 127
4.3.4 第三范式(3NF) 129
4.3.5 BC范式(BCNF) 130
4.3.6 多值依赖 132
4.3.7 第四范式(4NF) 134
4.3.8 关系模式规范化步骤 135
4.4 关系模式的分解特性 136
4.4.1 模式分解中存在的问题 136
4.4.2 无损连接 138
4.4.3 无损连接的测试 138
4.4.4 保持函数依赖的分解 142
4.4.5 分解成3NF的模式集 143
4.4.6 关系模式设计原则 144
习题 144
第5章 数据库的安全与保护 147
5.1 安全与保护概述 147
5.2 数据库的安全性保护 147
5.2.1 用户鉴别 148
5.2.2 存取权限控制 148
5.2.3 视图机制 149
5.2.4 跟踪审查 149
5.2.5 数据加密存储 150
5.3 数据库的完整性保护 150
5.3.1 完整性约束的分类 151
5.3.2 完整性控制 152
5.3.3 触发器 155
5.4 数据库的并发控制技术 155
5.4.1 事务及特性 155
5.4.2 数据库的并发控制 157
5.4.3 并发的目的 157
5.4.4 并发所引起的问题 157
5.4.5 并发控制方法 159
5.4.6 并发调度的可串行性 163
5.4.7 时标技术 165
5.5 数据库的恢复技术 167
5.5.1 故障的种类 167
5.5.2 恢复技术 168
5.5.3 检查点机制 172
5.6 数据库的复制与相关技术 173
5.6.1 数据库的复制 173
5.6.2 数据库的镜像 174
5.6.3 RAID技术简介 174
习题 175
第6章 数据库设计与实施 176
6.1 数据库设计概述 176
6.1.1 数据库设计概念 176
6.1.2 数据库设计步骤 177
6.1.3 数据库设计的特点 178
6.2 数据库规划 179
6.3 需求分析 179
6.3.1 需求分析的任务 180
6.3.2 需求分析的步骤 180
6.3.3 数据字典 183
6.4 概念结构设计 185
6.4.1 基本方法 185
6.4.2 主要设计步骤 186
6.5 逻辑结构设计 190
6.5.1 E-R模式到关系模式的转换 190
6.5.2 关系模式的优化 192
6.6 物理结构设计 194
6.6.1 聚簇设计 194
6.6.2 索引设计 195
6.6.3 分区设计 195
6.7 数据库的实施和维护 196
6.7.1 数据库的建立与调整 196
6.7.2 数据库系统的试运行 197
6.7.3 数据库系统的运行和维护 197
习题 198
第7章 数据库应用系统开发 200
7.1 数据库应用系统的结构 200
7.1.1 集中式结构 200
7.1.2 二层客户机/服务器结构 201
7.1.3 三层客户机/服务器结构 202
7.1.4 多层结构 203
7.2 Microsoft SQL Server 2000 204
7.2.1 SQL Server的主要特点 205
7.2.2 SQL Server的安装 206
7.2.3 SQL Server的基本工具 210
7.2.4 SQL Server的安全性管理 217
7.2.5 SQL Server的完整性策略 218
7.2.6 SQL Server的恢复技术 220
7.2.7 SQL Server的并发控制 222
7.2.8 数据库编程 224
7.3 一个简单而完整的数据库应用系统 227
7.3.1 图形化客户端开发工具——Delphi 227
7.3.2 一个数据库应用系统的实例 231
习题 254
第8章 数据库技术新发展 255
8.1 数据库家族概述 255
8.2 面向对象数据库技术 256
8.2.1 面向对象方法学简介 256
8.2.2 面向对象数据模型 257
8.2.3 面向对象数据库管理系统 261
8.3 分布式数据库 267
8.3.1 分布式数据库系统产生 267
8.3.2 分布式数据库系统的定义 269
8.3.3 分布式数据库系统的主要特点 270
8.3.4 分布式数据库系统的模式结构 272
8.3.5 分布式数据库管理系统及其分类 273
8.3.6 分布式数据库系统的优缺点 275
8.4 数据仓库与数据挖掘 276
8.4.1 数据的事务处理与分析处理 276
8.4.2 什么是数据仓库 278
8.4.3 数据仓库数据的四个基本特征 279
8.4.4 数据仓库系统的组成 280
8.4.5 数据仓库中数据的组织 281
8.4.6 数据仓库工具 282
8.4.7 数据挖掘工具 287
习题 297
参考文献 299