第1章 数据库基础 1
1.1 数据库系统 1
1.1.1 数据库系统的基本概念 1
1.1.2 数据管理技术的发展 2
1.1.3 数据库系统的组成 4
1.1.4 数据库系统的体系结构 5
1.2 关系数据库 7
1.2.1 关系数据库的基本概念 7
1.2.2 关系代数 8
1.3 数据库设计的步骤 14
1.4 数据库需求分析 16
1.4.1 需求分析的任务和步骤 16
1.4.2 需求调查的方法 17
1.4.3 编写需求规格说明书 17
1.4.4 学生成绩管理系统数据库需求分析 18
1.5 数据库概念结构设计 19
1.5.1 概念结构设计的任务 19
1.5.2 实体与联系 19
1.5.3 实体联系模型 20
1.5.4 E-R模型设计的步骤 21
1.5.5 学生成绩管理系统数据库概念结构设计 21
1.6 数据库逻辑结构设计 24
1.6.1 逻辑结构设计的任务 24
1.6.2 E-R模型向关系模型的转化 25
1.6.3 关系的规范化 26
1.6.4 学生成绩管理系统数据库逻辑结构设计 28
1.7 数据库物理结构设计 29
1.7.1 物理结构设计的任务 29
1.7.2 确定数据库的物理结构 29
1.7.3 学生成绩管理系统数据库物理结构设计 30
1.8 数据库实施 33
1.9 数据库运行和维护 33
习题1 33
实训1 34
第2章 SQL Server 2005简介 36
2.1 SQL Server 2005功能简介 36
2.2 SQL Server 2005的安装 37
2.2.1 SQL Server 2005的版本 37
2.2.2 SQL Server 2005的安装环境要求 38
2.2.3 SQL Server 2005的安装过程 39
2.3 SQL Server Management Studio 管理工具 43
2.3.1 SQLServer Management Studio的启动 44
2.3.2 SQLServer Management Studio的工作界面 45
2.3.3 附加学生成绩管理系统数据库 47
2.3.4 创建一个查询 48
2.4 SQL Server 2005帮助文档 49
习题2 50
实训 2 50
第3章 数据库的创建和管理 52
3.1 SQLServer数据库简介 52
3.1.1 系统数据库 52
3.1.2 数据库存储结构 53
3.2 数据库的创建 54
3.2.1 使用SQL Server Management Studio 创建数据库 55
3.2.2 使用CREATEDATABASE语句创建数据库 56
3.2.3 使用模板创建数据库 58
3.3 数据库的管理 60
3.3.1 打开数据库 60
3.3.2 查看数据库信息 60
3.3.3 扩充数据文件和事务日志文件的容量 61
3.3.4 收缩数据库 66
3.3.5 更改数据库的名称 69
3.3.6 删除数据库 70
3.3.7 分离和附加数据库 71
习题3 74
实训3 74
第4章 数据表的创建和管理 75
4.1 数据表概述 75
4.1.1 数据表的基本概念 75
4.1.2 数据类型 76
4.1.3 列的属性 78
4.2 创建数据表 79
4.2.1 使用SQL Server Management Studio 创建数据表 79
4.2.2 使用CREATETABLE语句创建数据表 80
4.3 数据表管理 81
4.3.1 查看数据表 81
4.3.2 修改数据表 83
4.3.3 删除数据表 85
4.4 数据的完整性 86
4.4.1 数据完整性概述 86
4.4.2 约束概述 86
4.4.3 约束的创建 87
4.4.4 默认值 93
4.4.5 规则 97
4.5 数据表中数据的操作 98
4.5.1 插入记录 99
4.5.2 修改记录 101
4.5.3 删除记录 101
习题4 102
实训4 103
第5章 数据查询 105
5.1 SQL 105
5.1.1 SQL概述 105
5.1.2 SQL的特点 105
5.1.3 SQL的分类 106
5.2 SELECT语句 106
5.2.1 SELECT语句的语法格式 106
5.2.2 SELECT语句的执行方式 107
5.3 单表查询 108
5.3.1 SELECT子句 108
5.3.2 WHERE子句 111
5.3.3 ORDER BY子句 115
5.3.4 聚合函数 116
5.3.5 GROUPBY子句 117
5.4 连接查询 118
5.4.1 连接谓词 119
5.4.2 JOIN连接 120
5.5 子查询 124
5.5.1 使用IN的子查询 124
5.5.2 使用比较运算符的子查询 126
5.5.3 使用EXISTS的子查询 127
5.5.4 相关子查询 129
5.5.5 INSERT、DELETE、UPDATE语句中的子查询 130
5.5.6 使用UNION运算符组合多个查询结果 132
5.5.7 INTO子句 133
习题5 134
实训5 135
第6章 数据库编程 136
6.1 Transact-SQL语言概述 136
6.2 Transact-SQL基础知识 137
6.2.1 Transact-SQL语法约定 137
6.2.2 数据库对象的引用规则 137
6.2.3 标识符 138
6.2.4 注释 138
6.2.5 常量 139
6.2.6 变量 139
6.2.7 运算符 141
6.2.8 运算符优先级 144
6.3 流程控制语句 144
6.4 批处理 150
6.5 函数 151
6.5.1 内部函数 151
6.5.2 用户自定义函数 160
6.6 编程技术应用 164
习题6 167
实训6 168
第7章 索引 170
7.1 索引概述 170
7.1.1 索引的概念 170
7.1.2 索引的作用 170
7.1.3 索引的分类 171
7.1.4 索引与约束的关系 171
7.2 创建索引 171
7.2.1 使用SQL Server Management Studio 创建索引 172
7.2.2 使用CREATEINDEX语句创建索引 173
7.3 管理索引 174
7.3.1 查看索引 174
7.3.2 删除索引 176
7.4 索引的应用 177
习题7 178
实训7 178
第8章 视图 179
8.1 视图概述 179
8.1.1 视图的概念 179
8.1.2 视图的作用 179
8.2 创建视图 180
8.2.1 使用SQL Server Management Studio 创建视图 180
8.2.2 使用CREATEVIEW语句创建视图 182
8.3 管理视图 184
8.3.1 查看视图 184
8.3.2 修改视图 184
8.3.3 删除视图 186
8.4 利用视图操作数据 186
8.4.1 查询操作 186
8.4.2 插入操作 187
8.4.3 修改操作 187
8.4.4 删除操作 188
8.5 视图的应用 188
习题8 189
实训8 190
第9章 存储过程 191
9.1 存储过程概述 191
9.1.1 存储过程的概念 191
9.1.2 存储过程的优点 191
9.1.3 存储过程的种类 192
9.2 创建和执行存储过程 193
9.2.1 创建存储过程 193
9.2.2 执行存储过程 194
9.2.3 存储过程的参数 195
9.3 存储过程的返回值 199
9.3.1 使用RETURN语句传回值 199
9.3.2 使用SELECT语句传回值 201
9.4 管理存储过程 202
9.4.1 查看存储过程 202
9.4.2 修改存储过程 204
9.4.3 删除存储过程 205
9.4.4 重命名存储过程 205
9.5 系统存储过程和扩展存储过程 206
9.5.1 系统存储过程 206
9.5.2 扩展存储过程 206
9.5.3 CLR集成 208
9.6 存储过程的应用 209
9.6.1 数据表的操作 209
9.6.2 数据库安全管理 212
习题9 214
实训9 215
第10章 触发器 216
10.1 触发器概述 216
10.1.1 触发器的概念 216
10.1.2 触发器的分类 216
10.1.3 插入表和删除表 217
10.2 DML触发器 218
10.2.1 创建DML触发器 218
10.2.2 修改DML触发器 224
10.2.3 删除DML触发器 225
10.3 DDL触发器 225
10.3.1 DDL触发器概述 225
10.3.2 创建DDL触发器 226
10.3.3 修改DDL触发器 228
10.3.4 删除DDL触发器 229
10.4 管理触发器 229
10.4.1 查看触发器 229
10.4.2 禁用或启用触发器 231
10.4.3 设置触发器的执行顺序 233
10.5 触发器的应用 233
习题10 236
实训10 237
第11章 备份和恢复 239
11.1 备份和恢复概述 239
11.1.1 数据库备份的概念 239
11.1.2 数据库恢复的概念 240
11.1.3 备份类型 240
11.1.4 备份设备 241
11.2 备份数据库 244
11.2.1 完整备份 244
11.2.2 差异备份 246
11.2.3 事务日志备份 247
11.2.4 文件和文件组备份 248
11.3 恢复数据库 249
11.3.1 使用SQL Server Management Studio恢复数据库 249
11.3.2 使用RESTORE DATABASE 语句恢复数据库 251
11.4 数据导入和导出 252
11.4.1 导出数据 252
11.4.2 导入数据 254
习题11 256
实训11 256
第12章 安全管理 257
12.1 SQL Server 2005的安全机制 257
12.2 SQL Server 2005的身份验证模式 257
12.3 登录账户管理 259
12.3.1 系统管理员登录账户 259
12.3.2 使用SQL Server Management Studio管理登录账户 259
12.3.3 使用Transact-SQL语句管理登录账户 263
12.4 数据库用户管理 264
12.4.1 使用SQL Server Management Studio管理数据库用户 264
12.4.2 使用Transact-SQL语句管理数据库用户 265
12.5 权限管理 266
12.5.1 数据库用户的分类 266
12.5.2 权限类型 267
12.5.3 权限管理 268
12.6 角色管理 272
12.6.1 服务器角色 272
12.6.2 数据库角色 274
习题12 279
实训12 279
第13章 游标和其他概念 280
13.1 游标的概念 280
13.2 定义游标 280
13.3 游标的使用 282
13.3.1 打开游标 282
13.3.2 读取游标 283
13.3.3 关闭与释放游标 285
13.3.4 使用游标 285
13.4 事务 287
13.4.1 事务的概念 287
13.4.2 事务的分类 287
13.5 并发控制 291
13.5.1 并发问题 291
13.5.2 锁定 292
习题13 294
实训13 295
第14章 数据库应用系统开发 296
14.1 JSP运行环境安装与配置 296
14.1.1 JSP概述 296
14.1.2 JSP运行环境安装与配置 296
14.2 JDBC数据库访问 298
14.3 学生成绩管理系统开发 300
14.3.1 系统开发过程概述 300
14.3.2 系统功能分析 301
14.4 学生成绩管理系统的实现 301
14.4.1 系统登录 302
14.4.2 系统管理模块 304
14.4.3 成绩登记模块 316
14.4.4 成绩查询模块 323
习题14 326
实训14 326
参考文献 327