第1章 数据库系统概述 1
1.1 数据库系统的概念 1
1.2 数据库技术发展的三个阶段 4
1.2.1 人工管理阶段 4
1.2.2 文件系统阶段 4
1.2.3 数据库系统阶段 5
1.3 数据库系统的模式结构 7
1.3.1 模式 7
1.3.2 数据库系统的三级模式结构 7
1.3.3 数据库的二级映像功能 8
1.4 数据库系统体系结构 8
1.5 数据模型 10
1.5.1 数据模型的概念 10
1.5.2 数据模型举例 11
1.6 数据库设计与应用 11
术语回顾 13
小结 13
习题 15
实验1 认识和安装Microsoft SQL Server 15
第2章 关系数据模型 16
2.1 关系的数学定义及性质 16
2.1.1 关系 16
2.1.2 关系数据库 18
2.1.3 关系的性质 18
2.2 关系的键 18
2.3 关系模型的完整性 19
2.3.1 实体完整性 19
2.3.2 参照完整性 20
2.3.3 用户定义的完整性 20
2.4 关系代数 20
2.4.1 关系代数概述 20
2.4.2 传统的集合运算 21
2.4.3 专门的关系运算 22
2.4.4 关系运算举例 25
术语回顾 25
小结 25
习题 27
实验2 创建数据库 28
第3章 结构化查询语言(SQL) 30
3.1 SQL概述及特点 31
3.1.1 SQL概述 31
3.1.2 SQL的标准化 31
3.1.3 SQL的特点 31
3.1.4 SQL基本概念 32
3.2 SQL的数据类型 33
3.3 SQL数据查询功能 34
3.3.1 数据查询概述 34
3.3.2 单表查询 36
3.3.3 连表查询 42
3.3.4 嵌套查询 43
3.3.5 并交差集合查询 46
3.3.6 SQL查询小结 47
3.4 SQL数据定义功能 47
3.4.1 概述 47
3.4.2 定义数据库 48
3.4.3 定义基本表 52
3.4.4 定义视图 54
3.4.5 定义索引 55
3.5 SQL数据操纵功能 55
3.5.1 概述 55
3.5.2 插入数据 56
3.5.3 修改(更新)数据 56
3.5.4 删除数据 57
3.6 SQL数据控制功能 57
3.6.1 概述 57
3.6.2 权限和角色的授予 57
3.6.3 权限和角色的收回 58
术语回顾 59
小结 59
习题 62
实验3 SQL简单查询操作 64
第4章 关系数据库的规范化 66
4.1 函数依赖 67
4.1.1 关系模式中的数据依赖 67
4.1.2 函数依赖的定义 68
4.1.3 关系键的形式化定义 69
4.2 规范化 69
4.2.1 范式与规范化 69
4.2.2 1NF 70
4.2.3 2NF 70
4.2.4 3NF 72
4.2.5 BCNF 73
4.2.6 多值依赖与4NF 74
4.2.7 规范化的基本原则 76
4.3 实例讲解 78
术语回顾 79
小结 79
习题 81
实验4 SQL复杂查询操作 81
第5章 数据库设计 83
5.1 数据库设计概述 84
5.2 需求分析 84
5.3 概念结构设计 86
5.4 逻辑结构设计 87
5.5 数据库物理结构设计 88
5.6 数据库实施 88
5.7 数据库运行和维护 89
术语回顾 90
小结 90
习题 92
实验5 SQL数据定义、更新操作 92
第6章 数据库的完整性 95
6.1 数据库完整性概述 95
6.2 实体完整性 97
6.2.1 实体完整性的定义和设置 97
6.2.2 实体完整性的检查和违约处理 98
6.2.3 用企业管理器设置实体完整性 99
6.3 参照完整性 100
6.3.1 参照完整性的定义和设置 100
6.3.2 参照完整性的检查和违约处理 102
6.3.3 用企业管理器设置用户参照完整性 103
6.4 用户定义的完整性 103
6.4.1 属性级约束条件的定义和违约处理 103
6.4.2 元组级约束条件的定义和违约处理 104
6.4.3 用企业管理器设置用户定义完整性 105
6.5 默认值约束 105
6.6 约束的命名与修改 107
6.7 触发器 109
术语回顾 111
小结 111
习题 114
实验6 数据库的完整性操作 114
第7章 数据库的安全性 116
7.1 数据库的安全性概述 116
7.2 用户的标识和鉴别 117
7.3 存取控制 118
7.3.1 自主存取控制 119
7.3.2 强制存取控制 120
7.4 权限与角色 121
7.5 视图机制 122
7.6 审计追踪 123
7.7 数据库安全性保护的其他措施 123
术语回顾 124
小结 125
习题 127
实验7 数据库安全性操作 127
第8章 数据库恢复技术 130
8.1 数据库事务的基本概念 130
8.2 故障的种类 132
8.3 数据库恢复 133
8.4 恢复策略 134
8.5 数据库镜像 135
8.6 SQL Server的备份与恢复技术简介 135
8.6.1 数据库备份 135
8.6.2 数据库恢复模式 136
8.6.3 SQL Server 2005的备份与恢复 137
术语回顾 144
小结 144
习题 145
实验8 数据库的备份和恢复 146
第9章 邮件作业自动批改系统的设计与实现 148
9.1 VBA和Outlook邮件规则介绍 149
9.2 系统功能分析 149
9.3 数据库设计 151
9.4 作业批改流程设计 153
9.4.1 邮件作业批改流程 153
9.4.2 邮件作业批改流程的关键代码 154
9.5 邮件主题分析 155
9.5.1 邮件分类和文件夹设置 155
9.5.2 不规范邮件主题的应对措施 156
9.5.3 分析邮件主题的代码 157
9.5.4 处理中文数字的代码 159
9.6 邮件正文分析 160
9.7 作业的分析统计功能 165
9.7.1 批改结果的查看 165
9.7.2 批改结果的统计 166
9.7.3 作业作答情况分析 167
小结 167
合作项目(可选):安装部署邮件作业自动批改系统 168
第10章 ASP连接SQL Server数据库开发案例 169
10.1 ASP技术 169
10.2 学生成果管理系统分析 171
10.2.1 系统需求分析 171
10.2.2 功能需求分析 172
10.2.3 数据库设计 175
10.3 学生成果管理系统的实现 176
10.3.1 开发工具 177
10.3.2 发布方法与功能展示 177
术语回顾 183
小结 183
合作项目(可选):使用ASP和SQL Server开发教学管理系统 184
第11章 PHP连接MySQL数据库开发实践 186
11.1 PHP连接MySQL数据库 186
11.1.1 PHP技术简介 186
11.1.2 MySQL数据库服务器使用简介 189
11.1.3 PHP连接MySQL数据库的应用 190
11.2 数据库课程资源库系统需求分析 192
11.3 数据库课程资源库系统功能设计 194
11.3.1 总体结构设计 194
11.3.2 数据库结构设计 196
11.4 数据库课程资源库系统实现 199
11.4.1 系统安装方法 199
11.4.2 数据库课程资源库系统模块 200
术语回顾 206
小结 206
合作项目(可选):使用PHP和MySQL开发网上书店 206
第12章 数据库的高级发展 208
12.1 问题提出 208
12.2 问题分析 209
12.3 数据仓库简介 209
12.3.1 数据仓库的概念 209
12.3.2 OLAP技术 210
12.3.3 概念分层 210
12.4 数据挖掘简介 210
12.4.1 数据挖掘的概念 210
12.4.2 数据挖掘的功能 211
12.5 数据挖掘软件及其应用 212
12.5.1 Weka 214
12.5.2 AlphaMiner 219
12.5.3 SQL Server Analysis Services 226
12.6 数据挖掘软件在教育领域的应用举例 229
12.6.1 网瘾相关因素分析 229
12.6.2 学生数据分析平台 230
术语回顾 230
小结 231
习题 232
附录A SQL复杂查询操作(实验4要求与详解) 233
附录B ASP.NET数据库编程工具 245
参考文献 272