第一部分 数据库系统原理 1
第1章 数据库系统概论 1
1.1 引言 1
1.1.1 数据、信息及知识三者的关系 1
1.1.2 数据处理 2
1.1.3 以数据为中心的应用系统的特点 2
1.2 数据库和数据库系统的发展 2
1.2.1 数据管理的发展 2
1.2.2 数据库系统产生的背景 8
1.2.3 数据库系统的应用前景 8
1.3 数据库管理系统 8
1.3.1 数据库管理系统的主要功能 9
1.3.2 数据库管理系统的组成 9
1.4 小结 9
1.5 习题 10
第2章 数据库系统的结构 11
2.1 现实世界的数据描述 11
2.1.1 数据描述 11
2.1.2 数据模型 12
2.2 概念数据模型 13
2.2.1 基本概念 13
2.2.2 实体-联系模型 15
2.3 结构数据模型 16
2.3.1 层次数据模型 16
2.3.2 网状数据模型 19
2.3.3 关系数据模型 21
2.4 数据库系统的组成与结构 23
2.4.1 数据库系统的组成 23
2.4.2 三级模式结构 24
2.4.3 二级映像 25
2.4.4 数据独立性 25
2.4.5 数据库管理系统的存取过程及数据库系统的特点 26
2.5 小结 27
2.6 习题 27
第3章 关系数据库理论基础 29
3.1 关系模型概述 29
3.1.1 关系数据结构 29
3.1.2 关系操作 30
3.1.3 数据完整性约束 31
3.2 关系数据模型的形式化定义 31
3.3 关系模式与关系数据库 34
3.3.1 关系模式 34
3.3.2 关系数据库 35
3.4 关系模型的完整性约束 35
3.4.1 实体完整性 35
3.4.2 参照完整性 36
3.4.3 用户定义完整性 38
3.5 关系代数 38
3.5.1 关系代数运算 38
3.5.2 传统的集合运算 39
3.5.3 专门的关系运算 40
3.6 小结 44
3.7 习题 44
第4章 关系数据库标准语言SQL 46
4.1 SQL语言概述 46
4.1.1 SQL语言的特点 47
4.1.2 SQL对关系数据库模式的支持 48
4.2 SQL的数据类型 49
4.3 SQL的数据定义功能 51
4.3.1 定义基本表结构 52
4.3.2 修改基本表 54
4.3.3 删除基本表 54
4.4 SQL的查询语句 54
4.4.1 单表查询 56
4.4.2 多表连接查询 64
4.4.3 子查询 67
4.5 SQL的数据操纵功能 70
4.5.1 插入(INSERT)数据 70
4.5.2 更新(UPDATE)数据 71
4.5.3 删除(DELETE)数据 71
4.6 建立和删除索引 72
4.6.1 索引的概念 72
4.6.2 建立索引 74
4.6.3 删除索引 75
4.7 SQL的控制功能 75
4.7.1 授权 75
4.7.2 收回权限 76
4.7.3 拒绝权限 76
4.8 小结 77
4.9 习题 77
第5章 数据库规范化理论 79
5.1 数据依赖 79
5.1.1 数据依赖 79
5.1.2 数据依赖对关系模式的影响 80
5.2 函数依赖 81
5.2.1 函数依赖的概念 81
5.2.2 码 82
5.3 关系规范化 83
5.3.1 第一范式(1NF) 83
5.3.2 第二范式(2NF) 84
5.3.3 第三范式(3NF) 85
5.3.4 BCNF范式 87
5.3.5 多值依赖与第四范式 88
5.3.6 规范化 90
5.4 关系模式的分解原则 92
5.4.1 无损连接分解 92
5.4.2 保持函数依赖分解 95
5.5 小结 96
5.6 习题 96
第6章 数据库保护 98
6.1 事务的概念 98
6.1.1 事务 98
6.1.2 事务的特征 99
6.2 数据库恢复概述 100
6.3 并发控制与封锁 100
6.3.1 并发控制概述 100
6.3.2 封锁 102
6.3.3 封锁协议 105
6.3.4 死锁 107
6.3.5 两段锁协议 109
6.4 数据库的安全性 109
6.4.1 数据库安全性控制概述 109
6.4.2 用户标识与鉴别 110
6.4.3 用户身份认证 110
6.4.4 访问控制 110
6.4.5 视图机制 111
6.4.6 审计 112
6.4.7 数据加密 112
6.5 数据库的完整性 113
6.5.1 数据完整性约束 113
6.5.2 SQL Server 2005的数据完整性控制 114
6.6 数据库的备份与恢复 119
6.6.1 数据库故障的种类 119
6.6.2 数据库备份 119
6.6.3 数据库恢复策略 121
6.7 小结 122
6.8 习题 122
第7章 数据库设计 123
7.1 数据库设计概述 123
7.1.1 数据库设计的特点 123
7.1.2 数据库设计的方法 124
7.1.3 数据库设计的步骤 125
7.2 数据库的需求分析 126
7.2.1 需求分析的任务 126
7.2.2 需求分析的方法 127
7.2.3 数据字典 128
7.3 数据库的结构设计 130
7.3.1 概念结构设计 130
7.3.2 逻辑结构设计 138
7.3.3 物理结构设计 140
7.4 数据库的行为设计 141
7.4.1 功能需求分析 141
7.4.2 功能设计 141
7.4.3 事务设计 142
7.5 数据库的实施、运行与维护 142
7.5.1 数据库数据的加载和试运行 142
7.5.2 数据库的运行和维护 144
7.6 小结 144
7.7 习题 145
第二部分 SQL Server 2005数据库系统基础与使用第8章 SQL Server 2005概述 146
8.1 SQL Server 2005系统介绍 146
8.1.1 SQL Server的发展史 147
8.1.2 SQL Server 2005的新增功能与特点 147
8.1.3 SQL Server 2005的版本 148
8.2 SQL Server 2005系统需求 149
8.2.1 硬件需求 149
8.2.2 软件需求 150
8.2.3 网络需求及其他需求 150
8.3 SQL Server 2005的安装 151
8.4 SQL Server 2005的工具和实用程序 155
8.4.1 SQL Server Management Studio 156
8.4.2 Business Intelligence Development Studio 157
8.4.3 SQL Server Profiler 158
8.4.4 数据库引擎优化顾问 160
8.4.5 Analysis Services 161
8.4.6 SQL Server Configuration Manager 161
8.4.7 SQL Server文档和教程 162
8.5 小结 163
8.6 习题与上机训练 163
第9章 数据库操作 164
9.1 SQL Server 2005体系结构 164
9.2 SQL Server 2005数据库 165
9.2.1 SQL Server数据库的存储结构 165
9.2.2 系统数据库 166
9.2.3 数据库对象 166
9.3 使用SQL Server管理平台管理数据库 167
9.4 使用T-SQL管理数据库 173
9.4.1 创建数据库 173
9.4.2 管理数据库 175
9.5 小结 176
9.6 习题与上机训练 176
第10章 基本表的创建与管理 178
10.1 基本表概述 178
10.2 使用SQL Server管理平台设计和管理表 180
10.2.1 创建表 180
10.2.2 修改表 182
10.2.3 删除表 185
10.3 使用SQL Server管理平台管理表中数据 185
10.3.1 添加记录 185
10.3.2 修改记录 187
10.3.3 删除记录 188
10.4 使用SQL Server管理平台进行数据完整性控制 188
10.4.1 域完整性的实现 190
10.4.2 实体完整性的实现 194
10.4.3 参照完整性的实现 196
10.5 小结 200
10.6 习题与上机训练 201
第11章 视图、存储过程和触发器的建立和使用 203
11.1 视图 203
11.1.1 视图的创建 203
11.1.2 通过视图进行查询、插入、修改、删除数据 208
11.1.3 视图的管理 210
11.2 存储过程 211
11.2.1 存储过程的类型 212
11.2.2 用户存储过程的创建与执行 212
11.2.3 用户存储过程的查看、修改和删除 217
11.3 触发器 218
11.3.1 创建和使用DML触发器 219
11.3.2 创建和使用DDL触发器 222
11.3.3 触发器的管理 224
11.3.4 触发器实例 225
11.4 小结 227
11.5 习题与上机训练 227
第12章 安全管理 228
12.1 安全管理概述 228
12.2 SQL Server登录名的管理 229
12.2.1 设置SQL Server的登录认证模式 229
12.2.2 创建登录名 230
12.2.3 管理登录名 232
12.3 数据库用户管理 234
12.3.1 登录名与数据库用户 234
12.3.2 创建用户 235
12.3.3 管理用户 236
12.4 服务器角色与数据库角色 237
12.4.1 固定服务器角色 238
12.4.2 数据库角色 240
12.5 权限管理 243
12.5.1 权限的类型 243
12.5.2 管理权限 244
12.6 小结 250
12.7 习题与上机训练 250
第13章 数据库日常维护 252
13.1 数据库备份 252
13.1.1 SQL Server的备份策略 252
13.1.2 备份设备 253
13.1.3 数据库备份 255
13.2 数据库恢复 260
13.2.1 SQL Server还原概述 260
13.2.2 使用SQL Server管理平台还原数据库 261
13.2.3 使用T-SQL语句恢复数据库 263
13.3 数据的导入导出 264
13.3.1 数据的导入 264
13.3.2 数据的导出 269
13.4 数据库的维护 274
13.4.1 数据库维护概述 274
13.4.2 数据库维护计划向导 274
13.5 小结 281
13.6 习题与上机训练 282
第三部分 开发数据库应用程序 283
第14章 用VB进行C/S结构数据库应用程序开发 283
14.1 C/S体系结构介绍 283
14.2 Visual Basic访问SQL Server数据库概述 284
14.2.1 Visual Basic访问SQL Server数据库的方式 284
14.2.2 Visual Basic中的数据库访问控件 285
14.2.3 使用ADO访问SQL Server数据库的一般步骤 287
14.3 用Visual Basic开发C/S结构的图书管理系统 290
14.3.1 需求分析 290
14.3.2 功能流程设计 291
14.3.3 数据库设计 292
14.3.4 创建数据库 293
14.3.5 Visual Basic代码编写与调试 294
14.3.6 打包发行 305
14.4 小结 310
14.5 习题与上机训练 311
第15章 用ASP.NET进行Web数据库开发 312
15.1 Web数据库概述 312
15.1.1 Web数据库的体系结构 313
15.1.2 Web数据库的基本概念 314
15.1.3 Web环境操作SQL Server数据库 318
15.2 开放式数据库开发 321
15.2.1 ODBC及其接口编程 321
15.2.2 ADO数据库接口介绍 323
15.3 ASP.NET技术 327
15.3.1 ASP.NET简介 328
15.3.2 ASP.NET的编程模型 330
15.3.3 ASP.NET的开发环境 333
15.4 开发Web数据库应用实例 338
15.4.1 GridView控件介绍 338
15.4.2 GridView控件实现数据库记录的分页显示 338
15.4.3 GridView控件对记录排序 339
15.4.4 GridView控件定制列元素 340
15.4.5 ASP与SQL Server数据库实例——在线教育系统 341
15.5 小结 361
15.6 习题与上机训练 361
参考答案 362
参考文献 388