第1章 数据库技术基础 1
1.1 数据库系统概述 1
1.1.1 数据库概念 1
1.1.2 数据管理技术的产生和发展 3
1.1.3 数据库系统的特点 4
1.2 数据模型 5
1.2.1 数据处理的三个世界 5
1.2.2 实体间的联系 6
1.2.3 数据模型的分类 7
1.2.4 关系模型的规范化 9
1.2.5 关系运算 10
1.3 数据库系统的结构 11
1.3.1 数据库系统的三级模式结构 12
1.3.2 数据库系统的二级映像 12
1.4 数据库设计基础 13
1.4.1 设计原则 13
1.4.2 设计步骤 14
1.5 需求分析 14
1.5.1 需求分析的任务 15
1.5.2 需求分析的方法 15
1.5.3 数据字典 16
1.6 数据库实施 18
1.6.1 数据的载入和应用程序的调试 18
1.6.2 数据库的试运行 19
1.7 本章小结 19
1.8 思考与实践 19
第2章 SQL Server 2008概述 22
2.1 SQL Server 2008的功能及特点 22
2.1.1 SQL Server 2008的服务组件 22
2.1.2 SQL Server 2008的新特性 23
2.2 SQL Server 2008的安装和配置 23
2.2.1 安装SQL Server 2008 23
2.2.2 配置服务器 34
2.2.3 注册服务器 34
2.3 SQL Server 2008管理工具 38
2.3.1 对象资源管理器的使用 38
2.3.2 查询编辑器的使用 39
课堂实践2-1:SQL Server 2008的简单应用 41
2.4 本章小结 45
2.5 思考与实践 45
第3章 数据库的创建与管理 47
3.1 SQL Server数据库简介 47
3.1.1 数据库的构成 47
3.1.2 数据库文件 48
3.1.3 数据库文件组 49
3.1.4 数据库对象 49
3.1.5 数据库对象的标识符 50
3.1.6 数据库对象的结构 50
3.2 管理数据库 51
3.2.1 创建数据库 51
3.2.2 查看数据库属性 53
3.2.3 打开数据库 55
3.2.4 修改数据库 56
3.2.5 删除数据库 56
3.2.6 使用SSMS管理数据库 57
3.3 分离和附加数据库 62
3.3.1 分离数据库 62
3.3.2 附加数据库 64
课堂实践3-1:创建教务管理系统数据库 65
3.4 本章小结 66
3.5 思考与实践 67
第4章 表的创建与管理 69
4.1 表概述 69
4.1.1 表的概念 69
4.1.2 表的类型 70
4.1.3 表的数据类型 71
4.1.4 表的设计 71
4.2 创建和管理表 72
4.2.1 创建表 72
4.2.2 查看表的信息 75
4.2.3 修改表结构 77
4.2.4 删除表 78
4.2.5 使用SSMS创建和管理表 78
4.3 表数据操作 82
4.3.1 添加数据 82
4.3.2 更新数据 84
4.3.3 删除数据 84
4.3.4 使用SSMS对表数据操作 85
课堂实践4-1:创建教务管理系统数据表 86
4.4 创建和管理索引 95
4.4.1 索引概述 95
4.4.2 创建索引 96
4.4.3 查看索引 97
4.4.4 删除索引 98
4.4.5 使用SSMS创建和管理索引 99
4.5 数据完整性 100
4.5.1 数据完整性的分类 100
4.5.2 数据完整性的实现 101
4.5.3 使用约束 102
4.5.4 使用规则 106
课堂实践4-2:教务管理系统中表的约束和规则管理 107
4.6 本章小结 109
4.7 思考与实践 109
第5章 数据查询与视图管理 113
5.1 简单查询 113
5.1.1 SELECT语句结构 113
5.1.2 SELECT子句 114
5.1.3 WHERE子句 116
5.1.4 ORDER BY子句 119
5.1.5 GROUP BY子句 120
5.1.6 HAVING子句 122
课堂实践5-1:简单查询的应用 122
5.2 连接查询 126
5.2.1 内连接 126
5.2.2 外连接 129
5.2.3 交叉连接 130
5.2.4 自连接 131
5.2.5 多表连接 132
课堂实践5-2:连接查询的应用 132
5.3 子查询 136
5.3.1 IN子查询 136
5.3.2 比较运算符子查询 137
5.3.3 ANY或ALL子查询 138
5.3.4 EXISTS子查询 139
课堂实践5-3:子查询的应用 140
5.4 联合查询 144
5.4.1 UNION操作符 144
5.4.2 UNION操作符和JOIN操作符的区别与联系 145
5.5 视图管理 146
5.5.1 视图概述 146
5.5.2 创建视图 147
5.5.3 更新视图 148
5.5.4 删除视图 148
5.5.5 使用SSMS管理视图 148
课堂实践5-4:教务管理系统中视图管理的应用 150
5.6 本章小结 153
5.7 思考与实践 153
第6章 Transact-SQL语言基础 156
6.1 Transact-SQL基础 156
6.1.1 标识符 156
6.1.2 注释 156
6.1.3 数据类型 157
6.1.4 常量与变量 158
6.1.5 运算符 162
6.1.6 表达式 162
6.2 函数 163
6.2.1 系统函数 163
6.2.2 用户自定义函数 168
6.3 流程控制语句 171
6.3.1 顺序控制语句 172
6.3.2 分支控制语句 172
6.3.3 循环控制语句 174
6.3.4 其他控制语句 175
6.4 游标 176
6.4.1 游标的概念 176
6.4.2 游标的使用 177
课堂实践6-1:游标在教务管理系统中的应用 179
6.5 本章小结 180
6.6 思考与实践 180
第7章 存储过程和触发器 183
7.1 存储过程 183
7.1.1 存储过程概述 183
7.1.2 创建存储过程 184
7.1.3 管理存储过程 189
7.1.4 使用SSMS管理存储过程 191
课堂实践7-1:创建查询选课记录的存储过程 193
7.2 触发器 194
7.2.1 触发器概述 195
7.2.2 创建触发器 196
7.2.3 DML触发器的工作原理 200
7.2.4 管理触发器 201
课堂实践7-2:创建一个插入事件触发器 204
7.3 本章小结 205
7.4 思考与实践 205
第8章 数据库安全管理 207
8.1 SQL Server的安全性 207
8.1.1 SQL Server安全性概述 207
8.1.2 SQL Server安全管理等级 207
8.2 身份验证模式 208
8.2.1 Windows身份验证模式 208
8.2.2 混合身份验证模式 208
8.2.3 设置身份验证模式 208
8.3 登录管理 209
8.3.1 创建Windows登录账户 209
8.3.2 创建SQL Server登录账户 213
8.3.3 管理登录账户 216
8.4 SQL Server数据库用户管理 217
8.4.1 使用Transact-SQL语句管理用户 218
8.4.2 使用SSMS管理用户 219
8.5 角色管理 221
8.5.1 角色概述 221
8.5.2 固定服务器角色 222
8.5.3 数据库角色 226
8.6 权限管理 230
8.6.1 权限概述 231
8.6.2 授予权限 231
8.6.3 撤销权限 235
8.6.4 拒绝权限 236
课堂实践8-1:创建数据管理员用户 236
8.7 数据库的备份与恢复 237
8.7.1 数据库的备份 237
8.7.2 数据库的恢复 243
课堂实践8-2:备份教务管理系统数据库 246
8.8 本章小结 247
8.9 思考与实践 248
第9章 事务与锁 250
9.1 事务 250
9.1.1 事务概述 250
9.1.2 事务操作 251
9.2 锁 256
9.2.1 并发问题 256
9.2.2 事务的隔离级别 256
9.2.3 SQL Server中的锁 257
课堂实践9-1:定义一个学生选课的事务 261
9.3 本章小结 262
9.4 思考与实践 262
第10章 数据库应用开发实例 264
10.1 系统分析 264
10.1.1 开发背景 264
10.1.2 需求分析 264
10.2 系统设计 265
10.2.1 系统功能设计 265
10.2.2 数据库设计 266
10.2.3 开发环境选择 273
10.3 系统实现 274
10.3.1 数据库访问公共类设计 274
10.3.2 登录模块设计 275
10.3.3 图书借阅管理模块设计 276
10.3.4 系统主模块设计 276
10.4 本章小结 278
10.5 思考与实践 278
附录A SQL Server 2008常用内置函数 279
附录B SQL Server 2008常用系统表 282
附录C SQL Server 2008常用系统存储过程 284
参考文献 286