第1章 数据库基础 1
1.1 数据库的相关概念及特点 1
1.1.1 数据和数据处理的概念 1
1.1.2 数据库、数据库管理系统与数据库系统的概念 2
1.1.3 数据库技术的发展、特点及应用 3
1.2 数据模型及应用 8
1.2.1 数据模型的概念和类型 9
1.2.2 概念模型的相关概念及表示方法 10
1.2.3 逻辑模型概述 14
1.3 数据库系统的组成和类型 19
1.3.1 数据库系统的组成 19
1.3.2 数据库系统的类型 19
1.4 数据库的模式结构 21
1.4.1 数据库的三级模式结构 21
1.4.2 数据库的二级映像 23
1.5 数据库管理系统概述 23
1.5.1 数据库管理系统的工作模式 23
1.5.2 数据库管理系统的功能和机制 24
1.5.3 数据库管理系统的模块组成 25
1.6 实验1 概念模型的画法及应用 25
1.6.1 实验目的 25
1.6.2 实验内容及步骤 25
1.6.3 实验练习 27
1.7 本章小结 27
1.8 练习与实践一 27
第2章 关系数据库基础 30
2.1 关系模型概述 30
2.1.1 关系模型的基本概念 30
2.1.2 关系的类型与性质 32
2.1.3 关系模式的表示 32
2.1.4 E-R图与关系模型之间的转换 33
2.2 关系模型的完整性 35
2.2.1 实体完整性 35
2.2.2 参照完整性 35
2.2.3 用户定义的完整性 36
2.3 常用的关系运算 37
2.3.1 关系运算符和运算种类 37
2.3.2 传统的关系运算 38
2.3.3 专门的关系运算 40
2.4 关系演算与查询优化 44
2.4.1 关系演算概述 44
2.4.2 查询优化常用的规则与算法 46
2.5 常量、变量、函数和表达式 49
2.5.1 标识符及使用规则 49
2.5.2 数据类型 50
2.5.3 常量和变量 50
2.5.4 函数 53
2.5.5 运算符及其用法 59
2.5.6 表达式 60
2.6 实验2 常量、变量、函数和表达式的应用 62
2.6.1 实验目的 62
2.6.2 实验内容 62
2.6.3 实验练习 62
2.7 本章小结 64
2.8 练习与实践二 65
第3章 SQL Server 2016基础 69
3.1 SQL Server的概念和发展 69
3.1.1 SQL Server的概念及发展概况 69
3.1.2 SQL Server版本及优点 70
3.2 SQL Server 2016的功能及特点 71
3.2.1 SQL Server 2016的主要功能 71
3.2.2 SQL Server 2016的主要特点 72
3.2.3 SQL Server 2016版本及对应功能 73
3.3 SQL Server 2016体系结构和文件 73
3.3.1 SQL Server 2016的体系结构 74
3.3.2 数据库的种类及文件 78
3.4 数据库语句的使用规则和特点 80
3.4.1 数据库语句的种类及特点 80
3.4.2 数据库语法规则及注释语句 82
3.5 实验3 SQL Server 2016的安装及操作界面 83
3.5.1 实验目的 83
3.5.2 实验要求及安排 83
3.5.3 实验内容及步骤 83
3.5.4 上机练习:分离及附加数据库 87
3.6 本章小结 88
3.7 练习与实践三 88
第4章 数据库、表和数据操作 90
4.1 数据库的常用操作 90
4.1.1 数据库的建立(定义)方法 90
4.1.2 数据库的打开、切换和关闭 92
4.1.3 数据库修改的操作 92
4.1.4 数据库删除的操作 94
4.2 常用的数据表操作 95
4.2.1 数据表建立的操作方法 95
4.2.2 数据表的修改和删除 97
4.3 数据查询的常用操作 99
4.3.1 数据查询语句及用法 99
4.3.2 条件查询和模糊查询 100
4.3.3 排序查询、多表连接和嵌套查询 103
4.4 数据更新的常用方法 105
4.4.1 数据插入的操作 105
4.4.2 数据修改的方法 107
4.4.3 数据删除的方法 107
4.5 实验4 数据库、表及数据的基本操作 108
4.5.1 实验目的 108
4.5.2 实验内容 108
4 5 3实验步骤 108
4.6 本章小结 116
4.7 练习与实践四 117
第5章 索引及视图 119
5.1 索引概述 119
5.1.1 索引的概念、特点及类型 119
5.1.2 索引的结构与原理 121
5.1.3 创建索引的策略 123
5.2 常用的索引操作 124
5.2.1 索引的创建及使用 124
5.2.2 索引的更新与删除 126
5.3 视图概述 127
5.3.1 视图的概念及作用 127
5.3.2 视图的种类 129
5.4 视图的基本操作 129
5.4.1 视图的策划和创建 129
5.4.2 视图的重命名、修改及删除 131
5.4.3 查询视图及有关信息 132
5.4.4 更新视图 134
5.5 实验5 索引及视图操作 135
5.5.1 实验目的 135
5.5.2 实验内容及步骤 135
5.5.3 实验练习 138
5.6 本章小结 139
5.7 练习与实践五 139
第6章 存储过程及触发器 141
6.1 存储过程概述 141
6.1.1 存储过程的概念 141
6.1.2 存储过程的特点和类型 142
6.2 存储过程的常用操作 143
6.2.1 创建存储过程 143
6.2.2 创建参数化存储过程 147
6.2.3 查看及修改存储过程 148
6.2.4 重命名或删除存储过程 152
6.3 触发器的应用 153
6.3.1 触发器概述 153
6.3.2 创建触发器 154
6.3.3 修改与管理触发器 156
6.3.4 触发器的工作方式 160
6.4 实验6 存储过程及触发器的操作 161
6.4.1 执行带回传参数的存储过程 161
6.4.2 使用触发器向数据库的表中添加数据 162
6.5 本章小结 162
6.6 练习与实践六 163
第7章 T-SQL应用编程 164
7.1 T-SQL基础概述 164
7.1.1 T-SQL的概念、特点和功能 164
7.1.2 T-SQL的类型和执行方式 165
7.2 批处理、脚本及事务 168
7.2.1 批处理概述 168
7.2.2 脚本及事务 170
7.3 流程控制结构 173
7.3.1 顺序结构 173
7.3.2 选择结构 175
7.3.3 循环结构 178
7.3.4 其他语句 179
7.4 嵌入式SQL概述 181
7.4.1 嵌入式SQL的概念 181
7.4.2 嵌入式SQL的语法规定及用法 181
7.5 实验7 流程控制语句操作 183
7.5.1 实验目的 183
7.5.2 实验内容及步骤 183
7.5.3 实验练习 184
7.6 本章小结 185
7.7 练习与实践七 185
第8章 数据库安全 188
8.1 数据库安全的概念及特点 188
8.1.1 数据库安全的相关概念 188
8.1.2 数据库安全风险分析 189
8.2 数据库安全技术和机制 190
8.2.1 数据库安全常用的关键技术 190
8.2.2 数据库的安全策略和机制 191
8.3 身份验证和访问控制 192
8.3.1 身份验证及权限管理 192
8.3.2 数据库安全访问控制 193
8.3.3 用户与角色管理 195
8.4 数据备份及恢复 200
8.4.1 数据备份 200
8.4.2 数据恢复 202
8.5 并发控制和封锁技术 207
8.5.1 并发操作产生的问题 207
8.5.2 并发控制概述 208
8.5.3 常用的封锁技术 209
8.5.4 并发操作的调度 211
8.6 实验8 数据备份及恢复操作 212
8.6.1 实验目的 212
8.6.2 实验内容及步骤 212
8.7 本章小结 215
8.8 练习与实践八 216
第9章 关系数据库的规范化 218
9.1 数据库的规范化问题 218
9.1.1 规范化理论的研究内容 218
9.1.2 关系模式的异常问题 219
9.2 函数依赖概述 220
9.2.1 函数依赖的概念 220
9.2.2 函数依赖的逻辑蕴含 221
9.2.3 函数依赖的推理规则 221
9.2.4 属性集的闭包及算法 222
9.2.5 候选键的求解和算法 223
9.2.6 函数依赖推理规则的完备性 224
9.2.7 最小函数依赖集 225
9.3 关系模式的分解 226
9.3.1 模式分解问题 226
9.3.2 无损分解及测试方法 226
9.3.3 保持函数依赖的分解 229
9.4 关系模式的范式及规范化 229
9.4.1 关系模式的范式 229
9.4.2 关系模式的规范化 235
9.5 本章小结 237
9.6 练习与实践九 237
第10章 数据库设计 239
10.1 数据库设计概述 239
10.1.1 数据库设计的任务和特点 239
10.1.2 数据库设计的基本方法 240
10.1.3 数据库开发设计的步骤 242
10.2 数据库应用系统设计 244
10.2.1 系统需求分析 244
10.2.2 概念结构设计 246
10.2.3 逻辑结构设计 254
10.2.4 数据库物理设计 258
10.2.5 数据库行为设计 260
10.2.6 数据库实施 261
10.2.7 数据库运行和维护 262
10.3 数据库设计文档 263
10.4 数据库应用程序设计案例 265
10.4.1 引言 265
10.4.2 系统需求分析 265
10.4.3 概念结构设计 266
10.4.4 逻辑结构设计 266
10.4.5 物理结构设计 266
10.4.6 数据库的实施运行和维护 267
10.5 实验10 数据库应用程序设计 269
10.5.1 实验目的 269
10.5.2 实验内容及步骤 269
10.6 本章小结 269
10.7 练习与实践十 270
第11章 数据库新技术 272
11.1 云数据库及分布式数据库 272
11.1.1 云数据库的发展及趋势 272
11.1.2 分布式数据库的发展及趋势 275
11.1.3 云数据库与传统的分布式数据库 276
11.2 大数据及主动数据库 276
11.2.1 大数据概述 276
11.2.2 主动数据库概述 279
11.3 数据仓库与数据挖掘 282
11.3.1 数据仓库概述 282
11.3.2 数据挖掘 284
11.3.3 数据仓库与数据挖掘的区别 287
11.4 数据库的其他新技术 288
11.4.1 其他新技术概述 288
11.4.2 空间数据库 288
11.4.3 多媒体数据库 290
11.4.4 面向对象数据库 290
11.4.5 移动数据库 291
11.4.6 并行数据库 291
11.4.7 工程数据库 292
11.4.8 其他数据库 292
11.5 数据库新技术应用发展趋势 293
11.5.1 数据库新技术发展的主流趋势 293
11.5.2 数据库新技术发展的特征 294
11.6 本章小结 296
附录 练习与实践习题部分参考答案 297
参考文献 307