目录 4
第1篇 技术篇 4
第1章 数据库系统概述 4
1.1 数据库技术的发展 4
1.2 数据库的基本概念 5
1.3 数据库系统 6
1.3.1 DBMS的功能 7
1.3.2 DBMS的组成 7
1.4 数据模型 9
1.4.1 数据模型的组成要素 10
1.4.2 概念数据模型 11
1.4.3 逻辑数据模型 14
1.5 数据模式 17
1.5.1 数据库系统的3级模式结构 17
1.5.2 数据库的二级映像功能与数据独立性 18
1.6 数据库用户 19
习题 20
第2章 关系数据库 22
2.1 关系模型 22
2.1.1 关系数据结构 22
2.1.2 关系操作 25
2.1.3 完整性约束 26
2.2.1 传统的集合运算 28
2.2 关系代数 28
2.2.2 专门的关系运算 29
2.2.3 关系代数查询举例 34
2.2.4 关系代数表达式的优化 35
习题 38
第3章 关系数据库标准语言SQL 40
3.1 SQL概述 40
3.1.1 SQL的产生与发展 40
3.1.2 SQL的特点 40
3.2 数据定义 43
3.2.1 定义、修改与删除表 43
3.2.2 建立与删除索引 46
3.3 数据更新 47
3.3.1 插入数据 47
3.3.2 修改数据 49
3.3.3 删除数据 50
3.4 数据查询 51
3.4.1 单表查询 51
3.4.2 连接查询 59
3.4.3 集合查询 63
3.4.4 嵌套查询 64
3.4.5 SELECT语句的一般格式 71
3.5.1 定义视图 73
3.5 视图 73
3.5.2 查询视图 75
3.5.3 更新视图 76
3.5.4 合理使用视图的益处 79
习题 80
第4章 数据库设计 81
4.1 数据库设计概述 81
4.1.1 数据库设计的任务与特点 81
4.1.2 数据库设计方法 82
4.1.3 数据库设计的基本步骤 82
4.2 需求分析 83
4.2.3 需求分析的方法 84
4.2.1 需求分析的任务 84
4.2.2 需求分析的重点 84
4.3 概念结构设计 86
4.3.1 概念结构设计的方法和步骤 86
4.3.2 数据抽象和局部视图设计 87
4.3.3 集成局部视图 88
4.4 逻辑结构设计 90
4.4.1 概念模型向关系数据模型的转换 90
4.4.2 外模式的设计 91
4.5 物理结构设计 92
4.5.1 确定数据库的物理结构 92
4.6 数据库实施 93
4.5.2 评价数据库的物理结构 93
4.7 数据库运行与维护 94
4.8 数据库设计举例 95
4.8.1 需求分析 95
4.8.2 概念结构设计 102
4.8.3 总体概念设计 103
4.8.4 逻辑结构设计 103
4.8.5 物理结构设计 105
4.8.6 数据库实施、运行和维护 106
习题 107
第5章 规范化理论 108
5.1 数据依赖 108
5.2.1 第一范式(1NF) 109
5.2 范式 109
5.2.2 第二范式(2NF) 110
5.2.3 第三范式(3NF) 111
5.2.4 BC范式(BCNF) 112
5.3 规范化举例 113
习题 118
第6章 数据库保护 119
6.1 数据库的安全性 119
6.1.1 安全性控制的一般方法 119
6.1.2 用户标识和鉴定 119
6.1.3 存取控制 120
6.1.4 审计 123
6.1.5 数据加密 124
6.2 数据库的完整性 124
6.2.1 完整性约束条件的定义 125
6.2.2 完整性约束条件的修改 128
6.2.3 完整性约束条件的检查和违约处理 129
6.3 并发控制 131
6.3.1 事务 132
6.3.2 事务的并发调度 134
6.3.3 基于封锁的并发控制方法 136
6.4.1 故障的种类 140
6.4 恢复 140
6.4.2 恢复的实现技术 141
6.4.3 恢复的策略 143
习题 144
第2篇 应用篇 147
第7章 SQL编程 147
7.1 嵌入式SQL 147
7.1.1 概念和特点 147
7.1.2 程序基本结构 149
7.1.3 嵌入式SQL实现的简单例子 151
7.1.4 管理数据库连接 153
7.1.5 执行SQL命令 154
7.1.6 操纵宿主变量 156
7.1.7 使用动态SQL 160
7.1.8 错误处理 162
7.2 PL/SQL和存储过程 163
7.2.1 基本概念 163
7.2.2 过程结构 164
7.2.3 使用PL/SQL编写存储过程的简单例子 165
7.2.4 过程声明 166
7.2.5 基本语句和表达式 167
7.2.6 流程控制 168
7.2.7 游标管理 172
7.2.8 错误处理 176
7.3.1 ODBC的基本概念 177
7.3 ODBC 177
7.3.2 使用ODBC编程的简单例子 183
7.3.3 主要接口函数分类 186
7.4 JDBC 188
7.4.1 JDBC的基本概念 188
7.4.2 使用JDBC编程的简单例子 191
7.4.3 主要接口分类 193
7.5 OLE DB 193
7.5.1 OLE DB的基本概念 194
7.5.2 使用ADO和OLE DB访问数据库的简单例子 197
7.5.3 主要对象及功能 199
7.6 小结 200
8.1 系统概述 202
第8章 典型数据库管理系统介绍:Kingbase ES 202
8.2 体系结构 203
8.2.1 进程结构 203
8.2.2 存储结构 205
8.2.3 基本部件 207
8.3 SQL及PL/SQL执行引擎 208
8.4 查询优化 209
8.5 安全策略 210
8.6 模式支持 212
8.7 数据维护 213
8.8.1 企业管理器 215
8.8 应用开发工具 215
8.8.2 交互式查询工具 217
8.8.3 ECC——嵌入式SQL 218
8.8.4 libkb——CLI支持 219
8.8.5 ODBC驱动 219
8.8.6 JDBC接口 221
8.9 Web应用支持 222
第9章 典型开发工具介绍:PowerBuilder 227
9.1 工具简介 227
9.2 开发环境 229
9.3 一个运行实例 233
9.4 快速开发数据库应用 234
9.5 系统调试 243
9.6 小结 246
第3篇 新技术篇 249
第10章 数据库技术新进展 249
10.1 数据库技术发展概述 249
10.2 数据模型及数据库技术发展的3个阶段 250
10.2.1 第一代数据库系统 250
10.2.2 第二代数据库系统 251
10.2.3 新一代数据库技术的研究和发展 252
10.3 数据库技术与其他相关技术相结合 252
10.3.1 Web数据库技术 253
10.3.2 嵌入式移动数据库 256
10.4 面向应用领域的数据库新技术 260
10.4.1 数据仓库 260
10.4.2 空间数据库 266
10.5 小结 267
附录A 上机实验内容及要求 268
A1 实验1 DDBMS的安装和启动 268
A2 实验2 使用DBMS系统:数据的定义、更新和查询 268
A3 实验3 数据库的安全性和完整性控制 270
A4 实验4 数据库设计 270
A5 实验5 小型应用系统开发 270
参考文献 272