第1章 数据库系统概论 1
1.1 数据库概述 2
1.1.1 信息与数据 2
1.1.2 数据处理与数据管理 2
1.1.3 数据库相关概念 3
1.1.4 数据管理技术的发展历史 5
1.1.5 数据库系统的特点 6
1.1.6 数据库新技术 7
1.2 数据描述 12
1.2.1 现实世界 12
1.2.2 信息世界 12
1.2.3 数据世界 14
1.3 数据模型 15
1.3.1 数据模型分类 15
1.3.2 概念模型的表示方法 16
1.3.3 数据模型的要素和种类 17
1.3.4 关系模型 19
1.4 数据库的体系结构 20
1.4.1 数据库的三级体系结构 20
1.4.2 体系结构中的5个要素 21
1.4.3 两级数据独立性 23
1.5 数据库系统的组成 23
1.6 当前流行的数据库 25
小结 28
习题 28
第2章 关系数据库 31
2.1 关系模型及其定义 32
2.1.1 关系数据结构 32
2.1.2 关系操作概述 36
2.1.3 关系的完整性 37
2.2 关系代数 39
2.2.1 传统的集合运算 40
2.2.2 专门的关系运算 41
小结 46
习题 47
第3章 SQL Server概述 51
3.1 SQL Server 2000关系数据库管理系统概述 52
3.1.1 启动、暂停和停止SQL Server 2000 52
3.1.2 SQL Server 2000的主要组件 57
3.1.3 事件探查器 61
3.2 数据库的创建与维护 61
3.2.1 SQL Server 2000数据库概述 61
3.2.2 创建和维护数据库 63
小结 74
习题 74
第4章 关系数据库标准语言SQL 75
4.1 SQL语言的概述 76
4.2 SQL数据定义功能 78
4.2.1 表的概述 78
4.2.2 创建表 81
4.2.3 修改表结构 87
4.2.4 快速添加、查看、修改与删除数据记录 88
4.2.5 删除表 89
4.3 SQL的数据查询功能 89
4.3.1 单表无条件查询 90
4.3.2 单表有条件查询 93
4.3.3 聚集函数的使用 96
4.3.4 分组与排序 97
4.3.5 多表连接查询 99
4.3.6 嵌套查询 102
4.3.7 集合查询 106
4.4 SQL数据更新 107
4.4.1 数据记录的插入 107
4.4.2 数据记录的修改 108
4.4.3 数据记录的删除 109
4.5 数据控制 110
4.5.1 授权 110
4.5.2 收回权限 111
小结 112
习题 112
第5章 SQL的高级应用 121
5.1 索引 122
5.1.1 索引的定义 122
5.1.2 索引的类型 122
5.1.3 创建索引 123
5.1.4 删除索引 125
5.2 视图 126
5.2.1 视图概述 126
5.2.2 视图的创建 126
5.2.3 视图的使用 129
5.2.4 视图的修改 130
5.2.5 视图的删除 131
5.3 存储过程 132
5.3.1 存储过程概述 132
5.3.2 创建存储过程 133
5.3.3 修改存储过程 135
5.3.4 执行存储过程 135
5.3.5 删除存储过程 136
5.3.6 在存储过程中使用参数 137
5.4 触发器 138
5.4.1 触发器概述 138
5.4.2 触发器的创建 139
5.4.3 触发器的类型 142
5.4.4 修改触发器 143
5.4.5 删除触发器 144
小结 144
习题 144
第6章 关系数据库规范化理论 148
6.1 问题的提出 149
6.1.1 存在的问题 149
6.1.2 解决方法 150
6.2 关系模式的规范化 150
6.2.1 基本概念 150
6.2.2 函数依赖 151
6.2.3 关系模式的形式化定义 153
6.2.4 码 153
6.2.5 范式 154
6.2.6 第一范式(1NF) 155
6.2.7 第二范式(2NF) 155
6.2.8 第三范式(3NF) 156
6.2.9 BCNF 156
6.3 多值依赖及关系的第四范式 157
6.3.1 多值依赖 159
6.3.2 第四范式 160
6.4 关系规范化小结 160
6.5 函数依赖公理和模式分解 162
6.5.1 函数依赖公理 162
6.5.2 属性闭包及其计算 163
6.5.3 求解关系模式的候选码 165
6.5.4 函数依赖集的最小依赖集 166
6.5.5 模式分解 167
6.6 关系模式设计实例 172
6.6.1 实例 172
6.6.2 预处理 172
6.6.3 写出关系模式R的基本函数依赖 173
6.6.4 找出关系模式R的候选码 173
6.6.5 关系模式R最高已经达到第几范式的判断 174
6.6.6 关系模式的分解 174
小结 176
习题 176
第7章 数据库设计 182
7.1 数据库设计概述 183
7.1.1 数据库设计的任务、内容和特点 183
7.1.2 数据库设计的基本方法 184
7.1.3 数据库设计的步骤 184
7.2 需求分析 187
7.2.1 需求分析的任务 188
7.2.2 需求分析的方法 188
7.2.3 数据流图(DFD) 189
7.2.4 数据字典(DD) 190
7.3 概念结构设计 192
7.3.1 概念结构设计的方法和步骤 193
7.3.2 数据抽象和局部E-R模型设计 194
7.3.3 全局E-R模型设计 196
7.4 逻辑结构设计 199
7.4.1 逻辑结构设计的任务和步骤 199
7.4.2 初始关系模式设计 200
7.4.3 关系模式的规范化 204
7.4.4 设计用户子模式 205
7.5 数据库的物理设计 206
7.5.1 数据库的物理设计的内容和方法 206
7.5.2 关系模式存取方法选择 207
7.5.3 确定数据库的存储结构 208
7.5.4 物理结构设计的评价 209
7.6 数据库的实施和维护 209
7.6.1 数据的载入 209
7.6.2 数据库试运行 210
7.6.3 数据库的运行与维护 210
小结 211
习题 212
第8章 数据库保护 216
8.1 数据库的安全性控制 217
8.1.1 用户标识与鉴别 217
8.1.2 用户访问权限控制 218
8.1.3 视图机制 219
8.1.4 数据加密 219
8.1.5 审计 220
8.1.6 用户定义的安全性措施 220
8.2 数据库的完整性控制 220
8.2.1 完整性约束条件 221
8.2.2 完整性控制 223
8.3 数据库的并发控制 223
8.3.1 事务 223
8.3.2 并发操作引起的问题 225
8.3.3 封锁 227
8.4 数据库的恢复 233
8.4.1 故障的种类 233
8.4.2 故障恢复的原理 234
8.4.3 故障恢复的方法 236
小结 237
习题 238
第9章 SQL Server的数据库保护技术 241
9.1 SQL Server的安全体系结构和安全认证模式 242
9.1.1 SQL Server的安全体系结构 242
9.1.2 SQL Server的安全认证模式 243
9.2 SQL Server的账号和角色管理 245
9.2.1 服务器登录账号 245
9.2.2 数据库用户 249
9.2.3 数据库角色 252
9.3 SQL Server的权限管理 254
9.3.1 SQL Server权限种类 254
9.3.2 对象权限的管理 255
9.3.3 语句权限的管理 258
9.4 SQL Server的数据库完整性及实现方法 258
9.4.1 SQL Server中的数据完整性种类 258
9.4.2 SQL Server数据完整性方式 259
9.4.3 SQL Server实现数据完整性的具体方法 259
9.4.4 默认 260
9.4.5 规则 263
9.5 SQL Server的并发控制机制 265
9.5.1 SQL Server的事务类型 265
9.5.2 SQL Server锁的粒度和类型 265
9.6 SQL Server的数据备份和数据恢复机制 267
9.6.1 SQL Server的数据备份和恢复策略 267
9.6.2 SQL Server数据库备份方法 268
9.6.3 数据库的恢复 272
小结 277
习题 277
第10章 综合实训 280
实训一 数据库和表的创建 280
实训二 单表查询 282
实训三 多表连接查询 284
实训四 嵌套查询 285
实训五 数据更新 286
实训六 索引与视图 287
实训七 存储过程与触发器 289
实训八 用户或角色和权限管理 292
实训九 数据完整性和数据恢复 294
参考文献 299