第1篇 数据库基本原理 3
第1章 数据库系统概论 3
1.1 数据库系统的基本概念 3
1.2 数据模型与数据库系统 6
1.3 数据库系统的特点 11
1.4 数据库系统的组成 12
1.5 数据库系统的三级模式结构 13
习题1 15
第2章 关系数据库原理 17
2.1 关系数据库基本概念 17
2.1.1 关系的名词解释 17
2.1.2 关系的数据结构 22
2.1.3 关系的数据操作 25
2.2 关系的完整性约束 26
2.2.1 实体完整性约束 26
2.2.2 参照完整性约束 27
2.2.3 用户定义完整性约束 28
2.3 关系代数 29
2.3.1 传统的集合运算 30
2.3.2 专门的关系运算 32
习题2 36
第3章 数据库SQL语言原理 38
3.1 SQL语言特点 38
3.2 数据库定义语句 40
3.2.1 经典示例数据库 40
3.2.2 模式定义语句 43
3.2.3 表定义语句 43
3.2.4 索引定义语句 47
3.3 数据查询语句 48
3.3.1 单表查询语句 49
3.3.2 连接查询语句 52
3.3.3 嵌套查询语句 54
3.3.4 集合查询语句 57
3.3.5 函数与表达式语句 57
3.3.6 分组与筛选语句 59
3.4 查询优化技术 60
3.5 数据更新语句 61
3.5.1 插入数据语句 61
3.5.2 修改数据语句 62
3.5.3 删除数据语句 62
3.6 视图语句 63
3.6.1 视图概论 63
3.6.2 定义视图 64
3.6.3 操作视图 65
3.6.4 删除视图 66
3.7 数据控制语句 66
3.7.1 授予权限语句 66
3.7.2 收回权限语句 68
习题3 69
第4章 关系数据库规范化原理 72
4.1 关系规范化的作用 72
4.1.1 问题的提出 72
4.1.2 解决的方法 74
4.1.3 规范化理论的出现 76
4.2 函数依赖 77
4.2.1 关系模式的简化表示 77
4.2.2 函数依赖的基本概念 77
4.2.3 码的函数依赖表示 79
4.2.4 函数依赖的推理规则 79
4.3 关系模式的规范化理论 80
4.3.1 第一范式 81
4.3.2 第二范式 83
4.3.3 第三范式 84
4.3.4 BCNF范式 85
4.4 多值依赖与第四范式 86
4.4.1 问题的引入 86
4.4.2 多值依赖基本概念 87
4.4.3 第四范式 88
4.4.4 保持函数依赖介绍 89
4.4.5 六个范式的发展历程 91
4.5 关系模式的规范化方法 92
4.5.1 关系模式规范化步骤 92
4.5.2 对关系模式规范化的范式理论进行反思 93
习题4 94
第5章 数据库编程与管理 95
5.1 事务的基本概念 95
5.1.1 事务的特性 95
5.1.2 事务的类型 97
5.2 并发控制 98
5.2.1 锁的概述 99
5.2.2 死锁及处理 101
5.3 存储过程编程 101
5.4 触发器编程 103
5.5 嵌入式SQL编程 106
5.6 JDBC编程 107
5.6.1 加载驱动程序 108
5.6.2 建立连接 108
5.6.3 使用语句 109
5.6.4 结果集 110
5.6.5 关于ODBC编程 113
5.7 数据库管理 113
5.7.1 数据库故障 114
5.7.2 数据库备份 114
5.7.3 数据库恢复 115
习题5 117
第6章 数据仓库简明原理 118
6.1 数据仓库启蒙 118
6.2 数据仓库定义 119
6.3 数据仓库原理 120
6.3.1 维表 121
6.3.2 事实表 124
6.3.3 数据仓库体系结构 128
6.4 数据仓库应用案例分析 131
习题6 133
第2篇 数据库设计模式 137
第7章 四个原子化理论 137
7.1 设计模式基本概念 138
7.2 数据库中的四种表 140
7.3 原始单据与实体之间的联系 143
7.4 原始E-R图与现代E-R图 144
7.5 数据库设计的内容与步骤 146
7.6 四个原子化理论的提出 148
7.7 四个原子化的实现方法 150
7.8 四个原子化理论的定理与推论 152
7.9 四个原子化是一种软件工程方法论 154
7.10 四个原子化理论与范式理论的比较 155
习题7 158
第8章 数据库的微观设计模式 160
8.1 微观设计模式1(主从模式) 160
8.2 微观设计模式2(弱实体插足模式) 163
8.3 微观设计模式3(强实体插足模式) 171
8.4 微观设计模式4(列变行模式) 174
8.5 微观设计模式的综合练习 178
习题8 181
第9章 数据库的宏观设计模式 182
9.1 宏观设计模式1(星系模式) 182
9.2 宏观设计模式2(主题模式) 188
9.3 宏观设计模式3(全局模式) 195
9.4 四个原子化理论与七个设计模式方法论小结 200
习题9 203
第3篇 数据库设计实践 207
第10章 数据库设计工具 207
10.1 安装与启动 208
10.1.1 PowerDesigner的安装 208
10.1.2 PowerDesigner的启动 210
10.2 数据库业务模型设计 211
10.2.1 建立BPM 211
10.2.2 创建起点 212
10.2.3 定义处理过程 213
10.2.4 定义资源 214
10.2.5 定义终点 214
10.2.6 定义流程 214
10.3 概念数据库模型设计 215
10.3.1 创建概念数据模型 215
10.3.2 创建实体 217
10.3.3 建立实体之间的联系 218
10.3.4 定义域 220
10.3.5 定义业务规则 222
10.3.6 定义CDM属性 223
10.4 物理数据库模型设计 224
10.4.1 创建物理数据模型 224
10.4.2 创建表 226
10.4.3 创建列 227
10.4.4 创建索引 227
10.4.5 创建视图 229
10.4.6 创建触发器 230
10.4.7 创建存储过程和函数 232
10.4.8 通过CDM生成PDM 233
10.5 面向对象模型设计 236
10.5.1 创建OOM 236
10.5.2 设计Use Case图 236
10.5.3 通过PDM转换生成OOM 239
第11章 数据库设计案例分析 241
11.1 网上投票系统数据库案例分析 241
11.1.1 投票系统需求分析 241
11.1.2 数据库概念设计 243
11.1.3 数据库物理设计 243
11.1.4 数据库表设计 244
11.2 网上论坛系统数据库案例分析 245
11.2.1 MySQL数据库管理系统 245
11.2.2 论坛管理系统数据库脚本 246
11.2.3 概念数据模型 249
11.2.4 数据库表的详细清单 250
11.2.5 数据库连接实现 252
11.3 学生管理信息系统数据库案例分析 253
11.3.1 概念数据模型CDM设计 253
11.3.2 物理数据模型PDM设计 255
11.3.3 用SQL Server 2000创建数据库 255
11.3.4 用PowerBuilder创建表 257
11.3.5 用ADO控件连接数据库 257
参考文献 259