第1章 数据库系统概述 1
1.1 概述 1
1.1.1 数据库技术与信息技术 1
1.1.2 数据库技术的应用及特点 2
1.1.3 SQL Server数据库系统与网络分布式操作 2
1.1.4 网络数据库系统编程 3
1.2 数据库技术的发展 4
1.2.1 人工管理阶段 4
1.2.2 文件系统阶段 5
1.2.3 数据库系统阶段 6
1.2.4 高级数据库系统阶段的应用与发展 8
1.2.5 数据库系统发展阶段的划分 10
1.3 信息描述与数据模型 11
1.3.1 数据模型及其三要素 12
1.3.2 概念模型及其表示方法 13
1.3.3 实体联系模型 16
1.4 三种常见的数据模型 17
1.4.1 层次模型 17
1.4.2 网状模型 18
1.4.3 关系模型 19
1.5 数据库系统 20
1.5.1 数据库系统的三级模式结构 20
1.5.2 数据库系统的组成 22
1.5.3 数据库管理系统的功能 22
1.5.4 数据库系统的视图 23
1.5.5 数据库系统的访问 25
思考练习题 26
第2章 关系数据库系统模型 27
2.1 关系模型的基本概念 27
2.1.1 关系模型 27
2.1.2 数据结构 30
2.1.3 关系操作 30
2.1.4 关系的完整性 31
2.2 关系运算 33
2.2.1 传统的集合运算 33
2.2.2 专门的关系运算 35
2.2.3 关系数据检索实例 40
2.3 关系演算 42
2.3.1 元组关系演算语言 42
2.3.2 域关系演算语言QBE 48
思考练习题 51
第3章 关系数据库的设计理论 53
3.1 实体类型的属性关系 53
3.2 数据的函数依赖 54
3.2.1 函数依赖 54
3.2.2 函数依赖的逻辑蕴涵 55
3.2.3 关键字 56
3.3 关系数据库模式的规范化理论 58
3.3.1 关系模式规范化设计 58
3.3.2 第一范式(1NF) 59
3.3.3 第二范式(2NF) 60
3.3.4 第三范式(3NF) 61
3.3.5 BCNF范式 62
3.3.6 多值函数依赖关系的第四范式(4NF) 63
3.3.7 第五范式(5NF) 65
3.4 关系模式的分解算法 66
3.4.1 关系模式的分解 66
3.4.2 无损连接 67
3.4.3 无损连接的检验 68
3.4.4 保持函数依赖的分解 69
思考练习题 70
第4章 数据库设计方法 72
4.1 数据库系统的设计过程 72
4.2 需求分析 74
4.2.1 收集用户需求 74
4.2.2 分析用户需求 75
4.2.3 撰写需求说明书 79
4.3 概念设计 79
4.3.1 概念模型的特点及设计方法 79
4.3.2 局部概念模型的设计 81
4.3.3 合成全局概念模型 82
4.4 逻辑结构的设计 85
4.4.1 概念模型向关系模型的转换 86
4.4.2 应用规范化理论优化逻辑模型 89
4.4.3 设计用户子模式 89
4.5 物理设计 90
4.5.1 影响物理设计的因素 90
4.5.2 确定关系模式的存取方法 91
4.5.3 确定数据库的存储结构 92
4.6 数据库的实施、运行和维护 93
4.6.1 数据库的实施 93
4.6.2 数据库的试运行 94
4.6.3 数据库的运行和维护 94
思考练习题 95
第5章 结构化查询语言SQL 97
5.1 SQL结构化查询语言 97
5.1.1 SQL语言的特点 97
5.1.2 SQL数据库的三级模式结构 98
5.2 SQL的数据描述与操作 99
5.2.1 定义基表 99
5.2.2 定义索引 101
5.3 SQL语言的数据检索功能 102
5.4 SQL语言的数据更新功能 108
5.4.1 修改语句 108
5.4.2 插入语句 108
5.4.3 删除语句 109
5.4.4 SQL语言对视图的操纵 109
5.5 SQL的数据控制功能 113
5.5.1 SQL的数据控制方法 114
5.5.2 SQL Server数据操作 115
思考练习题 116
第6章 SQL Server数据库系统 118
6.1 SQL Server系统概述 118
6.2 SQL Server数据库结构 120
6.2.1 数据库逻辑体系结构 121
6.2.2 数据库物理体系结构 121
6.2.3 客户机和服务器的交互方式 127
6.2.4 SQL Server分布式查询 127
6.3 SQL Server客户机/服务器体系结构 128
6.3.1 SQL Server客户端组件 129
6.3.2 SQL Server服务器端组件 130
6.3.3 SQL Server对XML的支持 132
6.3.4 SQL Server传输组件 133
6.4 SQL Server系统管理与开发 134
6.4.1 分布式管理 134
6.4.2 管理工具 135
6.4.3 语言与编程接口 137
思考练习题 138
第7章 SQL Server系统应用与管理 139
7.1 SQL Server 2014的数据库类型 139
7.2 SQL Server数据管理 140
7.2.1 SQL Server的数据定义语言 141
7.2.2 SQL Server的数据操作语言 144
7.3 SQL Server 2014数据库操作 146
7.3.1 创建用户数据库 146
7.3.2 修改用户数据库 151
7.3.3 删除用户数据库 152
7.3.4 数据库表应用操作 153
7.3.5 数据库表的创建 154
7.3.6 数据库表的修改 157
7.3.7 数据库表的删除 159
7.4 其他数据库应用操作 160
7.4.1 创建数据库视图 160
7.4.2 用工具和向导创建数据库图表 161
7.4.3 创建存储过程和触发器 161
7.4.4 数据库的安全管理 163
思考练习题 164
第8章 Transact-SQL语言结构 166
8.1 T-SQL语言概述 166
8.1.1 T-SQL语言特点 166
8.1.2 T-SQL附加语言 167
8.1.3 SQL Server查询分析器 173
8.2 Transact-SQL语言基础 173
8.3 Transact-SQL语言运算符 179
8.3.1 算术运算符 179
8.3.2 赋值运算符 181
8.3.3 位运算符 182
8.3.4 比较运算符 183
8.3.5 逻辑运算符 183
8.3.6 一元运算符 184
8.3.7 运算符的优先顺序 184
8.4 数据表的创建与维护 184
8.4.1 创建数据表 184
8.4.2 删除数据表 188
8.4.3 向数据表中插入记录 188
8.4.4 从数据表中删除记录 190
8.4.5 修改和更新记录 191
8.5 对数据库中数据表的操作 192
8.5.1 按条件查询数据 192
8.5.2 使用通配符和子查询 194
8.5.3 数据连接 196
8.5.4 数据排序 197
8.5.5 数据统计 198
8.6 数据库索引 199
8.6.1 索引的概念 200
8.6.2 索引类型 200
8.6.3 索引的创建与删除 201
8.6.4 索引的设计 202
8.7 数据库视图 204
8.7.1 视图的创建与删除 204
8.7.2 视图与数据修改 206
8.7.3 查询和视图的比较 206
8.8 函数 207
8.8.1 聚合函数 207
8.8.2 数学函数 212
8.8.3 字符串函数 213
8.8.4 系统函数 218
8.8.5 日期和时间函数 222
8.8.6 文本和图像函数 225
8.9 SQL Server数据库复制 226
8.9.1 数据库复制的技术体系 227
8.9.2 数据库复制原理 229
8.9.3 复制的拓扑结构 230
8.9.4 事务复制的实现 232
8.9.5 SQL Server数据备份与恢复 235
思考练习题 238
第9章 Transact-SQL程序设计 240
9.1 Transact-SQL的变量定义和流程控制语句 240
9.1.1 变量的定义和使用 240
9.1.2 流程控制语句 243
9.2 存储过程 252
9.2.1 存储过程概述 252
9.2.2 创建存储过程 254
9.2.3 调用存储过程 256
9.2.4 修改存储过程 258
9.2.5 删除存储过程 260
9.2.6 存储过程的优化 260
9.3 用户自定义的数据类型 261
9.4 触发器的应用 263
9.4.1 SQL Server触发器的用途 263
9.4.2 创建触发器 264
9.4.3 使用触发器 266
9.4.4 查看触发器的信息 270
9.4.5 修改和删除触发器 272
9.5 事务和锁 274
9.5.1 事务的概念 274
9.5.2 事务编程 276
9.5.3 锁 279
9.5.4 使事务更有效地工作 281
思考练习题 281
第10章 数据库安全与维护 283
10.1 SQL Server数据库的安全性管理概述 283
10.2 SQL Server数据库安全性管理与控制 285
10.3 SQL Server的安全体系结构和安全认证 289
10.4 SQL Server的权限管理 290
思考练习题 294
第11章 现代数据库技术 295
11.1 面向对象的数据库系统 295
11.1.1 面向对象的数据模型 296
11.1.2 面向对象数据库语言 297
11.1.3 面向对象数据库的模式演进 298
11.1.4 面向对象程序设计 299
11.2 并行数据库系统和分布式数据库系统 300
11.2.1 并行数据库系统 300
11.2.2 分布式数据库系统 301
11.3 数据仓库 302
11.3.1 从数据库到数据仓库 303
11.3.2 数据仓库的定义 304
11.3.3 数据仓库系统的结构 305
11.3.4 数据仓库的数据组织 306
11.3.5 数据仓库的数据模型 307
11.3.6 SQL Server数据仓库组件 309
11.3.7 SQL Server数据仓库的建设流程 311
11.4 数据挖掘 313
11.4.1 数据挖掘概述 313
11.4.2 数据挖掘模型 314
11.4.3 使用决策树模型从关系数据库中挖掘数据 316
11.4.4 应用聚类分析模型挖掘数据 317
思考练习题 318
第12章 网络数据库编程 319
12.1 网络数据库的连接 319
12.1.1 ODBC的管理 319
12.1.2 通过ODBC连接数据库 323
12.1.3 ADO简介 328
12.2 ASP编程 337
12.2.1 ASP概述 337
12.2.2 ASP的内置对象 340
12.2.3 ASP的内置组件 355
12.2.4 ASP实现对数据库的访问 360
12.3 JSP编程 363
12.3.1 JSP概述 363
12.3.2 JSP编程概要 364
12.3.3 JSP数据库访问技术 370
思考练习题 376
附录A 样本数据库 377
附录B SQL Server常用系统存储过程 380
附录C 函数一览表 383
附录D 配置ODBC所需的函数 390
附录E 各章思考练习题参考答案 391
E.1 第1章 思考练习题参考答案 391
E.2 第2章 思考练习题参考答案 392
E.3 第3章 思考练习题参考答案 394
E.4 第4章 思考练习题参考答案 395
E.5 第5章 思考练习题参考答案 396
E.6 第6章 思考练习题参考答案 397
E.7 第7章 思考练习题参考答案 399
E.8 第8章 思考练习题参考答案 400
E.9 第9章 思考练习题参考答案 401
E.10 第10章 思考练习题参考答案 402
E.11 第11章 思考练习题参考答案 403
E.12 第12章 思考练习题参考答案 404
参考文献 407