第一部分 原理篇 1
第一章 数据库系统导论 3
1.1 数据库技术的基本概念 3
1.1.1 数据 3
1.1.2 数据库 4
1.1.3 数据库管理系统 4
1.1.4 数据库系统 5
1.2 数据管理技术的发展阶段 5
1.2.1 人工管理阶段 6
1.2.2 文件系统阶段 6
1.2.3 数据库系统阶段 7
1.2.4 高级数据库阶段 8
1.3 数据模型 10
1.3.1 数据的三个范畴 10
1.3.2 数据模型 12
1.3.3 实体联系模型 12
1.3.5 网状模型 14
1.3.4 层次模型 14
1.3.6 关系模型 15
1.3.7 面向对象模型 17
1.4 数据库的体系结构 17
1.4.1 数据库的三级模式结构 17
1.4.2 两级数据独立性 18
1.5 数据库管理系统(DBMS) 19
1.5.1 数据库管理系统的功能 19
1.5.2 数据库管理系统的工作模式 20
习题 21
第二章 关系运算理论 23
2.1 关系代数 23
2.1.1 关系代数的基本运算 23
2.1.2 关系代数的附加运算 28
2.1.3 扩充的关系代数运算 32
2.2 关系演算 33
2.2.1 元组关系演算 34
2.3 关系代数表达式的优化 36
2.2.2 域关系演算 36
2.3.1 关系代数表达式的优化准则 37
2.3.2 关系代数表达式的等价变换规则 37
2.3.3 关系代数表达式的优化算法 39
习题 42
第三章 关系数据库的规范化设计 46
3.1 关系模式的存储异常与数据依赖 46
3.2 函数依赖 48
3.2.1 函数依赖的定义 48
3.2.2 函数依赖的相关概念 48
3.2.3 FD的逻辑蕴涵 49
3.2.4 函数依赖的推导规则 50
3.2.5 属性集的闭包 50
3.2.6 最小函数依赖集 51
3.3 关系模式的分解 52
3.3.1 模式分解 52
3.3.2 无损分解 52
3.3.3 保持函数依赖的分解 54
3.4 关系模式的范式 55
3.4.1 第一范式(1NF) 55
3.4.2 第二范式(2NF) 55
3.4.3 第三范式(3NF) 56
3.4.4 Boyce-Codd范式(BCNF) 56
3.5 多值依赖和4NF 57
3.5.1 研究多值依赖的必要性 57
3.5.2 多值依赖的定义 58
3.5.3 第四范式(4NF)的定义 58
3.6 连接依赖与第五范式(5NF) 59
3.6.1 连接依赖的定义 60
3.6.2 第五范式5NF 60
习题 60
第四章 关系数据库的设计 62
4.1 信息系统生存周期和数据库应用的生存周期 62
4.2.3 概念设计阶段 64
4.2.2 需求分析阶段 64
4.2.1 规划阶段 64
4.2 数据库设计的过程 64
4.2.4 逻辑结构设计 69
4.2.5 物理结构设计 76
4.2.6 数据库的实现 77
4.2.7 数据库的运行和维护 78
习题 79
5.1.1 SQL语言的发展 81
5.1 SQL语言概述 81
第五章 关系数据库标准语言SQL 81
5.1.2 SQL语言的特点 82
5.1.3 SQL的基本概念 83
5.2 SQL的数据定义 84
5.2.1 SQL的数据类型 84
5.2.2 SQL语言支持的运算符及通配符 85
5.2.3 数据库的建立和删除 86
5.2.4 基本表的创建、修改和删除 88
5.2.5 索引的建立和删除 91
5.3 数据查询 93
5.3.1 SELECT查询语句 93
5.3.2 简单查询 95
5.3.3 连接查询 100
5.3.4 子查询 101
5.3.5 集合查询 103
5.4 SQL的数据更新 103
5.4.1 插入数据 103
5.4.2 数据修改 104
5.4.3 删除数据 105
5.5 视图 106
5.5.1 视图的定义和删除 106
5.5.2 视图的查询 107
5.5.3 视图的更新 108
5.5.4 视图的优点 109
5.6 数据控制 109
5.6.1 授予权限 110
习题 111
5.6.2 收回权限 111
6.1 事务 115
6.1.1 事务的基本概念 115
第六章 数据库保护 115
6.1.2 事务的状态 117
6.1.3 事务处理的SQL语句 118
6.2 事务的并发控制 119
6.2.1 并发操作带来的问题 119
6.2.2 封锁技术 120
6.2.3 封锁协议 121
6.2.4 活锁与死锁 123
6.3 数据的恢复 125
6.3.1 数据库的故障种类 125
6.3.2 数据库恢复技术的实现 126
习题 129
7.1 数据库的安全性控制 131
7.1.1 安全性定义 131
第七章 数据库的安全性和完整性 131
7.1.2 安全模型及安全层次 132
7.1.3 安全性控制的一般方法 133
7.2 数据库的完整性 136
7.2.1 完整性定义 136
7.2.2 数据库的完整性约束 136
习题 140
8.1 VFP的主要特点 145
第八章 Visual FoxPro简介 145
第二部分 应用篇 145
8.2 VFP的安装、启动和退出 146
8.2.1 VFP的安装 146
8.2.2 VFP的启动 147
8.2.3 VFP的退出 148
8.3 VFP的主界面 148
8.4 VFP的工具栏 149
8.4.1 创建工具栏 150
8.4.3 删除创建的工具栏 151
8.4.2 修改工具栏 151
8.5 VFP环境的配置 152
8.5.1 使用“选项”对话框设置VFP环境 152
8.5.2 保存设置 153
8.6 VFP的设计工具 153
8.6.1 VFP向导 153
8.6.2 设计器 154
8.6.3 生成器 155
8.7.1 创建一个新项目 156
8.7 项目管理器 156
8.7.2 打开和关闭项目管理器 157
8.7.3 项目管理器的文件选项卡 157
8.7.4 定制项目管理器 161
8.7.5 项目管理器中的命令按钮 162
习题 163
第九章 VFP语言基础 165
9.1 数据类型 165
9.2.2 变量 167
9.2.1 常量 167
9.2 常量和变量 167
9.3 运算符和表达式 169
9.4 常用函数 171
9.4.1 数值函数 172
9.4.2 字符函数 173
9.4.3 日期和时间函数 174
9.4.4 数据类型转换函数 175
9.4.5 逻辑测试函数 177
习题 179
第十章 表的建立和操作 181
10.1 创建自由表 181
10.1.1 创建表结构 181
10.1.2 用表设计器创建表 183
10.1.3 使用CREATE命令创建表 184
10.1.4 用表向导创建表 185
10.1.5 表结构的修改与显示 189
10.2.2 表的浏览 191
10.2 表的编辑和显示 191
10.2.1 表文件的打开和关闭 191
10.2.3 输入数据 192
10.2.4 备注型数据的输入和编辑 192
10.2.5 通用型数据的输入和编辑 193
10.3 修改记录 195
10.3.1 交互式修改 195
10.3.2 用REPLACE命令直接修改 195
10.4 输出记录 196
10.5 记录指针 198
10.5.1 记录指针定位的菜单方式 198
10.5.2 查询定位命令 201
10.6 删除记录和恢复记录 202
10.7 表的索引 203
10.7.1 索引的基本概念 204
10.7.2 索引的建立 204
10.7.3 使用索引 206
习题 207
第十一章 数据库的建立和操作 209
11.1 创建数据库 209
11.1.1 建立数据库 209
11.1.2 打开和关闭数据库 211
11.1.3 向数据库中添加表 211
11.1.4 从数据库中移去表 212
11.2 建立表间的关联关系 213
11.2.1 建立表间的永久关系 213
11.2.2 建立数据表之间的临时关系 215
11.3 建立数据库的参照完整性 216
习题 217
第十二章 表单的设计和应用 220
12.1 面向对象程序设计基本概念 220
12.1.1 VFP中的对象 221
12.1.2 VFP中的类 222
12.1.3 创建新类 223
12.2 使用表单向导创建表单 225
12.2.1 用“表单向导”设计表单 226
12.2.2 用“一对多表单向导”设计表单 231
12.3 用表单设计器设计表单 233
12.3.1 启动表单设计器 233
12.3.2 表单设计工具 234
12.3.3 常用表单事件 236
12.3.4 常用表单方法 237
12.3.5 设计表单示例 237
12.4 使用表单生成器创建表单 241
习题 242
第十三章 查询和视图 244
13.1 查询的创建和使用 244
13.1.1 使用查询向导创建查询 244
13.1.2 用查询设计器建立查询 247
13.1.3 查看SQL 250
13.2 视图的创建和使用 251
13.1.4 查询去向 251
13.2.1 创建视图 252
13.2.2 视图的维护 255
习题 255
第十四章 菜单设计和报表设计 257
14.1 菜单设计的准备 257
14.1.1 设计菜单的一般准则 257
14.2 用菜单设计器创建菜单 258
14.1.2 菜单设计步骤 258
14.2.1 启动菜单设计器 259
14.2.2 菜单设计器各部分说明 259
14.2.3 用菜单设计器创建菜单示例 261
14.2.4 创建快捷菜单 264
14.3 报表设计 265
14.3.1 用“报表向导”创建报表 265
14.3.2 创建“快速报表” 269
14.3.3 报表的设计 271
14.4 标签设计 273
习题 276
第十五章 VFP程序设计 278
15.1 程序文件的建立和运行 278
15.1.1 程序文件的建立 278
15.1.2 程序文件的执行 279
15.1.3 VFP环境下程序文件建立的说明 280
15.2 程序中的常用命令 280
15.2.1 程序调试语句 280
15.2.2 交互输入命令 280
15.2.3 环境设置命令 283
15.3 程序控制的基本结构 283
15.3.1 顺序结构 283
15.3.2 选择分支结构 284
15.4 循环结构 288
15.4.1 当型循环结构 288
15.4.2 步长型循环结构 289
15.4.3 扫描型循环结构 290
15.5.1 过程和过程文件 291
15.5 模块结构程序设计 291
15.5.2 变量的作用域 293
15.6 应用程序开发实例 297
15.6.1 系统总体设计的目标 297
15.6.2 系统功能模块划分 297
15.6.3 创建项目 298
15.6.4 创建数据库 298
15.6.5 建立应用程序的过程 299
15.6.7 创建入学信息查询表单 300
15.6.6 创建主菜单 300
15.6.8 建立“维护”表单 303
15.6.9 创建学生入学信息报表和成绩报表 306
15.7 项目连编 307
15.7.1 设置主程序 307
15.7.2 系统的调试 308
15.7.3 项目连编 308
习题 309
参考文献 310