第1章 数据库系统导论 1
1.1 引言 1
1.1.1 数据与数据处理 1
1.1.2 数据管理技术的发展过程 2
1.1.3 数据库的概念 3
1.1.4 数据库系统的主要特征 6
1.2 现实世界的数据描述 9
1.2.1 现实世界 9
1.2.2 信息世界 10
1.2.3 计算机世界 10
1.2.4 常用术语的说明 10
1.3 数据模型 11
1.3.1 层次模型 11
1.3.2 网状模型 12
1.3.3 关系模型 13
1.3.4 对传统数据模型的评价 14
1.3.5 E-R数据模型 17
1.4 数据库系统结构 20
1.4.1 数据库系统结构的一些概念 20
1.4.2 数据库系统的组成 22
1.4.3 数据库管理系统 24
1.4.4 数据库语言 26
1.4.5 数据库管理员 29
1.4.6 数据字典 30
1.4.7 数据库系统的工作流程 32
习题 33
第2章 关系数据库及查询优化 34
2.1 关系模型的基本概念 34
2.1.1 笛卡儿积与关系定义 34
2.1.2 关系的一些基本概念 35
2.2 关系模型及其描述 36
2.2.1 关系模型概述 36
2.2.2 关系模式 37
2.2.3 关系模型的完整性规则 39
2.3 关系代数 39
2.3.1 传统的集合运算 39
2.3.2 专门的关系运算 40
2.4 关系演算语言 44
2.4.1 元组关系演算语言ALPHA 45
2.4.2 域关系演算语言QBE 48
2.5 查询优化概述及一般策略 50
2.5.1 查询优化概述 50
2.5.2 查询优化的一般策略 51
2.6 SQL Server数据库 52
2.6.1 SQL Server特点 52
2.6.2 SQL Server的数据库管理 52
2.6.3 数据完整性 61
习题 63
第3章 关系数据库标准语言——SQL 64
3.1 SQL语言概述 64
3.1.1 SQL的特点 64
3.1.2 基本概念 65
3.1.3 SQL语言的主要组成 65
3.2 Transact—SQL的附加语言元素 66
3.2.1 Transact SQL基本元素简介 66
3.2.2 Transact—SQL的几个常用语句 70
3.2.3 Transact—SQL的执行环境 71
3.3 Transcat—SQL语言的数据定义功能 73
3.3.1 数据库的创建 73
3.3.2 基本表的创建 78
3.3.3 索引的建立和撤消 84
3.4 SQL语言数据操纵功能 89
3.4.1 SQL数据查询 90
3.4.2 SQL数据插入、删除和修改 98
3.5 视图 102
3.5.1 理解视图 102
3.5.2 视图的定义和删除 103
3.5.3 视图的查询与更新 105
3.6 存储过程技术 106
3.6.1 存储过程的概念 106
3.6.2 存储过程的分类 107
3.6.3 存储过程的创建 108
3.6.4 删除存储过程 110
3.7 触发器 111
3.7.1 触发器的概念 111
3.7.2 创建和删除触发器 111
3.7.3 使用触发器的一点建议 115
3.8 数据库的完整性 115
3.8.1 完整性的概念 115
3.8.2 完整性控制的实现方式 116
3.9 数据库的安全性 120
3.9.1 安全性的概念 120
3.9.2 数据库的安全性措施 120
3.10嵌入式SQL 122
3.10.1 嵌入式SQL语句与主语言之间的通信 123
3.10.2 不用游标的SQL语句 123
3.10.3 使用游标的SQL语句 125
3.10.4 动态SQL语句 127
习题 129
第4章 关系数据库理论 131
4.1 基本概念 131
4.1.1 函数依赖 131
4.1.2 平凡函数依赖和非平凡函数依赖 132
4.1.3 完全函数依赖与部分函数依赖 132
4.1.4 传递函数依赖 132
4.1.5 码 132
4.2 关系模式的规范化 133
4.2.1 规范化理论的主要内容 133
4.2.2 范式 133
4.2.3 多值依赖与第四范式(4NF) 137
4.2.4 关系模式的规范化 139
4.3 模式分解 140
4.3.1 函数依赖集的投影 140
4.3.2 模式分解 140
4.3.3 保持函数依赖性的分解 141
4.3.4 无损连接分解 141
4.4 数据库设计 142
4.4.1 数据库设计的任务、内容和特点 142
4.4.2 数据库设计的步骤 143
4.4.3 需求分析 144
4.4.4 概念结构设计 148
4.4.5 逻辑结构设计 156
4.4.6 数据库物理设计 157
4.4.7 数据库实施 160
4.4.8 数据库运行和维护 162
习题 163
第5章 数据库的并发控制与恢复 164
5.1 数据库的并发控制 164
5.1.1 事务及并发控制的基本概念 164
5.1.2 并发操作与数据的不一致性 165
5.1.3 封锁及封锁协议 167
5.1.4 死锁和活锁 170
5.1.5 并发调度的可串行性 172
5.1.6 两段锁协议 173
5.1.7 基于时间标志的并发控制 173
5.2 SQL Server的并发控制策略 175
5.3 数据库的恢复 177
5.3.1 故障的种类 178
5.3.2 数据恢复的实现技术 178
5.3.3 数据库恢复策略 180
5.3.4 具有检查点的数据恢复技术 182
5.4 SQL Server的恢复策略 183
5.4.1 SQL Server的备份类型 183
5.4.2 SQL Server备份的操作方式 184
5.4.3 SQL Server的数据备份或恢复策略 184
习题 185
第6章 Power Builder 8.0基础 186
6.1 Power Script语言 186
6.1.1 Power Script语言基础 186
6.1.2 数据类型 187
6.1.3 变量、常量和表达式 188
6.1.4 过程控制语句 189
6.2 Power Builder 8.0应用程序设计入门 190
6.3 菜单和MDI的应用程序的设计 191
6.4 常用控件的使用 195
6.5 数据库的建立与应用 199
6.6 游标的使用 203
6.7 用嵌入式 SQL操作数据库 204
6.8 多表更新 205
6.9 数据更新及自动配置ODBC的方法 207
6.10 通用查询程序 209
习题 214
第7章 PB数据库应用系统设计实例——超市仓库管理系统 215
7.1 用户需求 215
7.1.1 超市仓库管理系统及POS机的简介 215
7.1.2 超市仓库管理系统及POS机的用户需求 215
7.2 超市仓库管理系统及POS机的分析和设计 216
7.2.1 超市仓库管理系统及POS机的分析和概要设计 216
7.2.2 超市仓库管理系统及POS机数据库设计 216
7.3 超市仓库管理系统及POS机的具体实现 220
7.3.1 后台数据库的设计 220
7.3.2 系统模块的具体实现 220
7.3.3 收银机的设计 232
7.3.4 系统的实现 234
7.4 主要原码清单 235
7.4.1 仓库管理系统 235
7.4.2 收银机 246
第8章 数据库系统的研究与新进展 254
8.1 分布式数据库系统 254
8.1.1 分布式数据库系统概述 254
8.1.2 分布式数据库系统的体系结构 255
8.1.3 分布透明性 257
8.1.4 分布式数据库系统(DDBS)的组成 258
8.1.5 分布式数据库的应用 258
8.2 面向对象的数据库系统 258
8.2.1 面向对象的数据模型 259
8.2.2 类和类层次 261
8.2.3 面向对象的数据库语言 263
8.2.4 对象关系数据库管理系统 263
8.3 其他新型数据库系统 264
8.3.1 演绎数据库系统 264
8.3.2 模糊数据库系统 266
8.3.3 并行数据库 267
8.3.4 主动数据库 269
8.3.5 多媒体数据库 270
8.3.6 工程数据库 270
习题 271
参考文献 272