第一章 绪论 1
1.1 什么是数据库 1
1.1.1 相互关联的数据的集合 1
1.1.2 用综合的方法组织数据 1
1.1.3 低冗余与数据共享 1
目录 1
1.1.4 数据具有较高的独立性 2
1.1.5 保证数据的安全、可靠 2
1.1.6 最大限度地保证数据的正确性 2
1.1.7 数据可以并发使用并能同时 2
保证数据的一致性 2
1.2 数据库管理系统 3
1.3 数据库系统和数据库管理员 3
1.3.1 数据库系统 3
1.3.2 数据库管理和数据库管理员 4
1.4.2 文件系统阶段 5
1.4 数据库的过去、现在和未来 5
1.4.1 人工管理阶段 5
1.4.3 数据库系统阶段及其发展过程 7
1.4.4 数据库技术的广泛应用领域 8
习题 9
第二章 数据模型和三层模式数据库 10
2.1 信息结构与E-R方法 10
2.1.1 数据的三种范畴 10
2.1.2 实体联系方法 11
2.2 概念数据模型 14
2.2.1 概念数据模型中的基本联系 14
2.2.2 理解和转换多对多联系 17
2.2.3 扩展Bachman图 18
2.2.4 连接陷阱 19
2.2.5 概念数据模型——实例研究 20
2.3.1 层次数据模型 23
2.3 传统的三大数据模型 23
2.3.2 网络数据模型 25
2.3.3 关系数据模型 28
2.4 数据独立性与三层结构 29
2.4.1 存储数据独立性 29
2.4.2 概念数据独立性 31
2.5 数据库管理系统的结构 32
2.5.1 数据库的三层模式结构 32
2.5.2 模式说明实例 33
2.5.3 数据库管理系统的总体结构 37
习题 39
第三章 关系数据库及其操作语言 40
3.1 关系模型的基本概念 40
3.1.1 笛卡儿积与关系定义 40
3.1.2 关系的一些基本概念 41
3.2.1 关系概念模式 42
3.2 关系模式 42
3.2.2 关系存储模式 43
3.2.3 关系外部模式 44
3.3 关系代数 44
3.3.1 传统的集合运算 44
3.3.2 专门的关系运算 45
3.4 关系数据库标准数据语言——SQL 50
3.4.1 SQL的数据定义功能 52
3.4.2 SQL的数据查询功能 56
3.4.3 视图 74
3.4.4 SQL的数据操作功能 77
3.4.5 SQL的数据控制功能 79
3.4.6 SQL的宿主使用 81
习题 85
4.1.1 函数依赖 87
第四章 关系数据理论 87
4.1 基本概念 87
4.1.2 术语和符号 88
4.1.3 为什么要讨论函数依赖 88
4.1.4 模式分解 89
4.2 函数依赖的公理系统 89
4.2.1 Amstrong公理的内容及正确性 89
4.2.2 Amstrong公理的推论 90
4.2.3 逻辑蕴涵和闭包 91
4.2.4 公理的完备性 92
4.2.5 闭包的计算 93
4.2.6 函数依赖集的等价和最小化 94
4.3 规范化 97
4.3.1 第一范式(1NF) 97
4.3.3 第三范式(3NF…) 98
4.3.2 第二范式(2NF) 98
4.3.4 BC范式(BCNF) 99
4.3.5 多值依赖与第四范式(4NF) 101
4.3.6 规范化小结 102
4.4 模式分解 103
4.4.1 模式分解的准则 103
4.4.2 3NF无损连接和保持函数依赖算法 105
4.4.3 使分解后的关系模式数最少 106
习题 107
第五章 客户/服务器数据库基础 109
5.1 客户/服务器体系结构 109
5.1.1 客户/服务器和其他应用结构 109
5.1.2 文件服务器与客户/服务器的数据库操作 112
5.1.3 客户/服务器结构的特点 113
5.1.4 三层客户/服务器模型 114
5.2.1 SQL Server功能概述 116
5.2 Microsoft SQL Server基础 116
5.2.2 SQL Server的存储结构 120
5.2.3 SQL Server安装说明 122
5.3 Transact-SQL简介 123
5.3.1 数据库管理的命令 123
5.3.2 数据库对象管理命令 126
5.3.3 变量、数据类型与表达式 128
5.3.4 数据操作命令 134
5.3.5 数据管理和数据控制命令 139
5.3.6 函数 142
5.3.7 流程控制和输入输出命令 146
5.3.8 系统提供的存储过程 147
5.3.9 数据字典 147
习题 149
6.1.1 数据库设备的管理 150
6.1 SOL Server的数据库管理 150
第六章 充分利用数据库服务器的特点 150
6.1.2 数据库管理 154
6.1.3 使用段优化存储 159
6.2 数据完整性 162
6.2.1 实体完整性 162
6.2.2 或完整性 163
6.2.3 参照完整性 164
6.2.4 用户定义完整性 165
6.3 存储过程 165
6.3.1 基本概念 165
6.3.2 创建和执行存储过程 166
6.3.3 存储过程的返回值和状态信息 167
6.3.4 要用好存储过程 168
6.4 触发器及其用途 168
6.4.1 基本概念 168
6.4.2 插入视图和删除视图 169
6.4.3 删除类触发器 170
6.4.4 插入类触发器 170
6.4.5 更新类触发器 170
习题 171
第七章 数据库保护 173
7.1 数据一致性和并发控制 173
7.1.1 事务 173
7.1.2 干扰问题 174
7.1.3 封锁 175
7.1.4 死锁 177
7.2 安全性控制 179
7.2.1 安全性概述 179
7.2.2 SQL Server的安全模式 180
7.2.3 创建用户和用户组 181
7.2.4 权限管理 182
7.3 备份与恢复 186
7.3.1 故障与备份类型 186
7.3.2 日志的概念 188
7.3.3 备份或转储 188
7.3.4 恢复 194
7.4 镜像 196
7.4.1 SQL Server的镜像配置选择 196
7.4.2 建立镜像 196
7.4.3 取消镜像 198
7.4.4 重镜像 198
习题 199
第八章 开放的客户端开发 200
8.1 开放式客户体系结构与ODBC 200
8.1.1 ODBC的基本概念 200
8.1.2 ODBC的构成 201
8.1.3 ODBC接口的使用 202
8.2 Visual FoxPro作为SQL Server的客户端 207
8.2.1 连接到SQL Server 207
8.2.2 对SQL Server进行操作 209
8.2.3 Visual FoxPro中其他ODBC函数 210
8.3 PowerBuilder介绍 215
8.3.1 PowerBuilder的数据库接口 215
8.3.2 PowerBuilder应用的构成与 215
开发方法 215
8.3.3 对象、属性与事件 217
8.3.4 PowerBuilder的工具 218
8.3.5 与数据库的连接 220
8.3.6 一个简单实例 222
8.4 用Visual Basic开发客户/服务器应用 233
8.4.1 远程数据对象 233
8.4.2 RDO与SQL Server的连接 235
8.4.3 创建和执行SQL查询 237
8.4.4 插入、更新和删除记录 241
习题 246
第九章 分布式数据库与分布数据处理 247
9.1 什么是分布式数据库 247
9.2 分布式数据库的数据分布方式 249
9.2.1 数据的分布方式 249
9.2.2 数据分片 250
9.3 SQL Server的分布数据管理概述 250
9.4 SQL Server的复制概念 251
9.4.1 SQL Server的复制 251
9.4.2 复制技术中使用的术语和基本概念 252
9.4.3 SQL Server的复制模型 253
9.4.4 复制处理 255
9.5.1 用于配置复制服务器的存储过程 257
9.5.2 用于出版管理的存储过程 257
9.5 复制存储过程 257
9.5.3 用于订阅管理的存储过程 258
9.5.4 用于复制操作的存储过程 258
9.5.5 用于复制事务管理的存储过程 258
9.6 建立复制 258
9.6.1 复制前的准备工作 259
9.6.2 配置复制服务器 259
9.6.3 出版 260
9.6.4 订阅 260
习题 260
第十章 数据库系统的开发 262
与数据库设计 262
10.1 概述 262
10.2 结构化生命周期方法 262
10.3 快速原型方法 264
10.4 DADM方法 265
10.5 面向对象方法 267
10.5.1 面向对象的基本概念 267
10.5.2 面向对象的分析和设计方法 269
10.6 可能会失败 270
10.6.1 认识问题 270
10.6.2 方法问题 270
10.6.3 工具问题 270
10.6.4 管理问题 271
10.7 数据库设计 271
10.7.1 概念模型设计 271
10.7.2 逻辑数据库设计与规范化 273
理论的应用 273
10.7.3 物理数据库设计 274
10.8 客户/服务器应用规划综述 275
10.8.1 可以量化的需求分析 275
10.8.2 性能需求 277
10.8.3 并发需求 278
10.8.4 数据分布需求 278
10.8.5 恢复需求 278
10.8.6 安全问题 279
10.8.7 系统需求 279
习题 280
第十一章 数据库应用和研究的 281
新领域 281
11.1 数据仓库 281
11.1.1 什么是数据仓库 281
11.1.2 数据仓库的结构 282
11.1.3 数据仓库系统 283
11.1.4 建立数据仓库 284
11.1.5 实现数据仓库的数据库环境 284
11.1.7 软件厂商的数据仓库解决方案 285
11.1.6 数据仓库与决策支持 285
11.2 因特网上的Web数据库 286
11.2.1 因特网及其所提供的服务 287
11.2.2 Web与HTML 288
11.2.3 Web数据库应用的一般 290
结构和方法 290
11.2.4 各种Web数据库应用方案概述 291
11.2.5 Sybase的Web-SQL方案 292
11.3 数据库的其他应用和研究领域 295
11.3.1 面向对象数据库 295
11.3.2 并行数据库 297
11.3.3 主动数据库 297
11.3.4 工程数据库 298
11.3.5 知识库 299
习题 301
参考文献 302