第1章 数据库系统概述 1
1.1信息、数据、数据处理与数据管理 1
1.1.1数据与信息 1
1.1.2数据处理与数据管理 2
1.2数据库技术的产生、发展 3
1.3数据库系统的组成 8
1.4数据库系统的内部体系结构 10
1.4.1数据库系统的三级模式结构 10
1.4.2数据库系统的二级映像与数据独立性 12
1.4.3数据库系统的三级模式与二级映像的优点 12
1.5数据库系统的外部体系结构 13
1.6数据库管理系统 15
1.6.1 DBMS的主要功能 15
1.6.2 DBMS的组成 16
1.6.3 DBMS的数据存取的过程 17
1.7数据模型 17
1.7.1数据模型的概念及分类 17
1.7.2数据模型的组成要素 18
1.8三个世界及其有关概念 19
1.8.1现实世界 19
1.8.2信息世界 19
1.8.3计算机世界 21
1.8.4概念模型的E-R表示方法 21
1.9四种数据模型 23
1.9.1层次模型 23
1.9.2网状模型 25
1.9.3关系模型 26
1.9.4面向对象模型 29
1.10数据库系统的发展 30
1.10.1第一代数据库系统 30
1.10.2第二代数据库系统 30
1.10.3第三代数据库系统 32
1.11数据库技术与其他相关技术的结合 32
1.11.1分布式数据库 33
1.11.2数据仓库与数据挖掘技术 34
1.11.3多媒体数据库 37
1.11.4数据库技术的研究领域 38
1.12小结 38
习题 39
第2章 关系数据库 42
2.1关系模型的数据结构及其形式化定义 42
2.1.1关系的形式化定义及其有关概念 42
2.1.2关系的性质 44
2.1.3关系模式 46
2.1.4关系数据库与关系数据库模式 46
2.2关系的码与关系的完整性 47
2.2.1候选码与主码 47
2.2.2外码 48
2.2.3关系的完整性 48
2.3关系代数 49
2.3.1关系代数的分类及其运算符 50
2.3.2传统的集合运算 50
2.3.3专门的关系运算 52
2.4关系演算 56
2.4.1元组关系演算语言 56
2.4.2域关系演算语言QBE 61
2.5小结 65
习题 65
第3章 关系数据库标准语言—SQL 68
3.1 SQL的基本概念与特点 68
3.1.1 SQL的发展及标准化 68
3.1.2 SQL的基本概念 69
3.1.3 SQL的主要特点 69
3.2 SQL Server 2008 R2简介 70
3.2.1 SQL Server的发展与版本 70
3.2.2 SQL Server 2008 R2的主要组件 71
3.2.3 Management Studio 71
3.3创建与使用数据库 72
3.3.1数据库的结构 73
3.3.2 SQL Server的系统数据库 73
3.3.3 SQL Server的示例数据库 74
3.3.4创建用户数据库 74
3.3.5修改用户数据库 77
3.3.6删除用户数据库 80
3.3.7查看数据库信息 80
3.4创建与使用数据表 81
3.4.1数据类型 81
3.4.2创建数据表 83
3.4.3定义数据表的约束 85
3.4.4修改数据表 88
3.4.5删除基本表 89
3.4.6查看数据表 90
3.5创建与使用索引 91
3.5.1索引概述 91
3.5.2索引的类型 92
3.5.3索引的设计 93
3.5.4索引的使用 94
3.5.5使用数据库引擎优化顾问 96
3.6数据查询 99
3.6.1 SELECT命令的格式与基本使用 99
3.6.2条件查询 101
3.6.3常用库函数及统计汇总查询 103
3.6.4分组查询 104
3.6.5查询的排序 105
3.6.6数据表连接及连接查询 106
3.6.7子查询 108
3.6.8合并查询 112
3.6.9存储查询结果到表中 112
3.7数据操纵 113
3.7.1修改数据 113
3.7.2添加数据 115
3.7.3删除数据 116
3.8视图 117
3.8.1创建视图 117
3.8.2修改视图 119
3.8.3删除视图 120
3.8.4查询视图 120
3.8.5更新视图 121
3.9数据控制 121
3.9.1权限与角色 121
3.9.2系统权限与角色的授予与收回 122
3.9.3对象权限与角色的授予与收回 122
3.10小结 123
习题 124
第4章 关系数据库理论 128
4.1规范化问题的提出 128
4.1.1规范化理论的主要内容 128
4.1.2不合理的关系模式存在的存储异常问题 128
4.2函数依赖 131
4.2.1函数依赖的定义 131
4.2.2函数依赖的逻辑蕴涵定义 132
4.2.3函数依赖的推理规则及正确性 133
4.2.4完全函数依赖与部分函数依赖 134
4.2.5传递函数依赖 136
4.2.6属性集的闭包及其算法 135
4.2.7候选键的求解理论和算法 136
4.2.8函数依赖推理规则的完备性 137
4.2.9函数依赖集的等价、覆盖和最小函数依赖集 138
4.3关系模式的分解 140
4.3.1模式分解问题 141
4.3.2无损连接分解 141
4.3.3无损分解的测试算法 142
4.3.4保持函数依赖的分解 142
4.4关系模式的范式 145
4.4.1第一范式 145
4.4.2第二范式 146
4.4.3第三范式 148
4.4.4 BC范式 152
4.4.5多值依赖与第四范式 155
4.5关系模式的规范化 158
4.5.1关系模式规范化的目的和原则 158
4.5.2关系模式规范化的步骤 159
4.5.3关系模式规范化的要求 159
4.6小结 161
习题 162
第5章 数据库安全保护 166
5.1数据库的安全性 166
5.1.1数据库安全性的含义 166
5.1.2安全性控制的一般方法 166
5.1.3 SQL Server 2008的数据安全性机制 170
5.1.4 SQL Server 2008的身份验证模式 171
5.1.5 SQL Server 2008的登录账号和服务器角色 172
5.1.6 SQL Server 2008的数据库用户账号和数据库角色 174
5.2完整性控制 179
5.2.1数据库完整性的含义 179
5.2.2完整性规则的组成 179
5.2.3完整性约束条件的分类 180
5.2.4数据完整性的实施 181
5.2.5规则 182
5.2.6默认 183
5.3并发控制与封锁 184
5.3.1数据库并发性的含义 184
5.3.2事务(Transaction) 185
5.3.3并发操作与数据的不一致性 186
5.3.4封锁 188
5.4数据库的恢复 193
5.4.1数据库恢复的含义 193
5.4.2数据库恢复的原理及其实现技术 193
5.4.3数据库的故障和恢复的策略 194
5.5小结 196
习题 197
第6章 数据库设计 199
6.1数据库设计概述 199
6.1.1数据库设计的任务、内容和特点 199
6.1.2数据库设计方法简述 201
6.1.3数据库设计的步骤 202
6.2系统需求分析 204
6.2.1需求分析的任务 204
6.2.2需求分析的方法 205
6.3概念结构设计 207
6.3.1概念结构设计的必要性 207
6.3.2概念模型的特点 208
6.3.3概念结构设计的方法与步骤 208
6.4逻辑结构设计 216
6.4.1逻辑结构设计的任务和步骤 216
6.4.2初始关系模式设计 217
6.4.3关系模式规范化 218
6.4.4模式评价与改进 218
6.5物理结构设计 220
6.5.1确定物理结构 220
6.5.2评价物理结构 222
6.6数据库实施 222
6.6.1建立实际数据库结构 222
6.6.2装入数据 222
6.6.3应用程序编码与调试 223
6.6.4数据库试运行 223
6.6.5整理文档 223
6.7数据库运行和维护 224
6.7.1维护数据库的安全性与完整性 224
6.7.2监测并改善数据库性能 224
6.7.3重新组织和构造数据库 224
6.8小结 225
习题 225
第7章SQL Server 2008高级应用 229
7.1 Transact-SQL程序设计 229
7.1.1变量 229
7.1.2运算符 230
7.1.3批处理 233
7.1.4流程控制命令 233
7.1.5常用命令 237
7.1.6常用函数 240
7.2存储过程 249
7.2.1存储过程的概念、优点及分类 249
7.2.2创建存储过程 250
7.2.3查看存储过程 253
7.2.4重新命名存储过程 253
7.2.5删除存储过程 253
7.2.6执行存储过程 253
7.2.7修改存储过程 254
7.3触发器 254
7.3.1触发器概述 254
7.3.2触发器的工作原理 255
7.3.3创建触发器 257
7.3.4查看触发器 259
7.3.5修改触发器 260
7.3.6删除触发器 261
7.4备份和还原 261
7.4.1备份和还原概述 261
7.4.2创建备份设备 264
7.4.3备份数据库 265
7.4.4还原数据库 267
7.4.5备份和还原系统数据库 268
7.5小结 269
习题 269
SQL Server 2008综合练习 271
参考文献 276