第1章 数据库基础知识 1
1.1 信息、数据与数据处理 1
1.1.1 数据与信息 1
1.1.2 数据处理 1
目录 1
1.2 计算机数据管理的三个阶段 2
1.2.1 人工管理阶段 2
1.2.2 文件系统阶段 2
1.2.3 数据库系统阶段 3
1.3 什么是数据库系统 3
1.3.1 数据 4
1.3.2 用户 4
1.4 数据库管理系统 5
1.4.1 DBMS的主要功能 5
1.3.3 软件 5
1.3.4 硬件 5
1.4.2 DBMS的组成 6
1.5 数据模型 6
1.5.1 概念模型 6
1.7.6 数据库运行维护 1 6
1.7.5 数据库实施 1 6
1.5.2 常用的数据模型 8
1.6 关系数据库 9
1.6.1 基本术语 9
1.6.2 关系运算 11
1.6.3 规范化设计理念和方法 11
1.7.1 需求分析 13
1.7 数据库设计 13
1.7.3 逻辑结构设计 14
1.7.2 概念结构设计 14
1.7.4 物理结构设计 16
练习题1 17
第2章 VFP系统初步 19
2.1 VFP的特点 19
2.2 VFP系统的启动和退出 21
2.2.1 启动VFP系统 21
2.2.2 退出VFP系统 22
2.3 VFP系统界面 22
2.3.1 菜单 22
2.3.2 窗口 23
2.3.3 对话框 24
2.4 VFP系统菜单 24
2.4.1 “文件”菜单 25
2.4.2 “编辑”菜单 26
2.4.3 “显示”菜单 26
2.4.4 “格式”菜单 26
2.4.5 “工具”菜单 27
2.4.6 “程序”菜单 27
2.4.7 “窗口”菜单 28
2.4.8 “帮助”菜单 28
2.5 定制VFP开发环境 28
2.5.1 设置环境和管理临时文件 28
2.5.2 配置VFP工具栏 32
练习题2 34
第3章 VFP语言基础 36
3.1 数据类型 36
3.1.1 字符型 36
3.1.2 货币型 36
3.1.3 数值型 37
3.1.4 单精度浮点型 37
3.1.5 日期型 37
3.1.6 日期时间型 37
3.1.7 双精度浮点型 37
3.1.11 通用型 38
3.1.13 备注型(二进制) 38
3.1.12 字符型(二进制) 38
3.1.9 逻辑型 38
3.1.10 备注型 38
3.1.8 整型 38
3.2 数据存储容器 39
3.2.1 常量 39
3.2.2 变量 40
3.2.3 数组 44
3.2.4 字段 45
3.2.5 记录 45
3.2.6 对象 45
3.3.2 字符运算符 46
3.3.3 日期运算符 46
3.3.1 算术运算符 46
3.3 运算符 46
3.3.4 逻辑运算符 47
3.3.5 关系运算符 47
3.3.6 类与对象运算符 48
3.4 表达式 48
3.4.1 算术表达式 48
3.4.2 字符表达式 48
3.4.3 日期表达式 49
3.4.4 关系表达式 49
3.4.5 逻辑表达式 49
3.4.6 名称表达式 49
3.5 VFP命令结构 50
3.4.7 宏替换表达式 50
练习题3 51
第4章 建立表 55
4.1 建立表结构 55
4.1.1 交互建立表结构 55
4.1.2 使用SQL命令建立表结构 56
4.2 修改表结构 57
4.2.1 交互修改表结构 57
4.2.2 使用SQL命令修改表结构 58
4.3 删除表 60
4.4 复制表 61
4.5 重命名表 62
4.6 建立样本表 63
练习题4 65
5.1.1 索引类型 69
第5章 索引 69
5.1 索引类型和索引文件类型 69
5.1.2 索引文件类型 70
5.2 建立索引文件 71
5.2.1 建立结构复合索引文件 71
5.2.2 建立独立复合索引文件 73
5.2.3 建立独立索引文件 74
5.3 索引文件的引用 74
5.3.1 结构复合索引文件的引用 74
5.3.2 独立复合索引文件的引用 76
5.3.3 独立索引文件的引用 77
5.4.1 结构复合索引文件的维护 78
5.4.2 独立复合索引文件的维护 78
5.4 索引文件的维护 78
5.4.3 独立索引文件的维护 80
5.5 索引标识的删除 80
5.5.1 删除结构复合索引文件中的索引标识 80
5.5.2 删除独立复合索引文件中的索引标识 81
5.5.3 删除独立索引文件 81
练习题5 82
第6章 表的操作 84
6.1 打开表 84
6.1.1 USE命令 84
6.1.2 使用多个表 85
6.2 输入记录 88
6.2.1 全屏幕编辑 88
6.2.2 使用命令 90
6.3 修改记录 93
6.3.1 全屏幕编辑 93
6.3.2 使用命令 93
6.4 删除记录 94
6.4.1 逻辑删除记录 94
6.4.2 物理删除记录 96
6.5 查找记录 97
6.5.1 记录的定位 97
6.5.2 顺序查找 98
6.5.3 记录过滤 99
6.5.4 索引查找 100
6.6.1 计数命令 101
6.6 数据统计 101
6.6.2 求和命令 102
6.6.3 求平均值命令 102
6.6.4 分类汇总命令 103
练习题6 103
第7章 SELECT-SQL查询 109
7.1 SELECT-SQL语句格式 109
7.2 投影查询 111
7.3 选择查询 112
7.4 对查询结果进行排序 114
7.5 使用聚合函数 115
7.6 表的连接查询 116
7.7 子查询 119
7.8 查询结果的合并 121
练习题7 122
第8章 建立和操作数据库 127
8.1 自由表和数据库 127
8.2 建立数据库文件 127
8.3 数据库的操作 128
8.3.1 打开数据库 128
8.3.2 向数据库中添加表 130
8.3.3 显示数据库中的表 131
8.3.4 从数据库中移去表 131
8.3.5 引用多个数据库 132
8.3.6 关闭数据库 133
8.3.7 删除数据库 133
8.3.8 查看和修改数据库结构 133
练习题8 135
第9章 使用数据词典 137
9.1 设置长表名和表的注释 137
9.1.1 设置长表名 137
9.1.2 设置表的注释 138
9.2 设置长字段名、标题和注释 139
9.2.1 设置长字段名 139
9.2.2 设置字段注释 140
9.2.3 设置字段的标题 140
9.3 字段默认值 141
9.3.1 设置字段默认值 141
9.3.2 利用默认值来加快数据的输入 141
9.4.1 建立表间的永久关系 142
9.4 建立和删除表间的关系 142
9.3.4 何时使用默认值 142
9.3.3 允许的默认值 142
9.4.2 删除表间的永久关系 143
9.4.3 建立表之间的临时关系 144
9.5 设置字段级和记录级有效性规则 145
9.5.1 何时实施约束 145
9.5.2 设置字段级有效性规则 146
9.5.3 何时检查字段级规则 148
9.5.4 设置记录级有效性规则 148
9.5.5 何时检查记录级规则 149
9.5.6 从数据库中移去具有关联规则的表 149
9.6 生成参照完整性 149
9.7 建立存储过程 151
9.7 存储过程 151
9.7.2 将存储过程添加到数据库中 152
9.7.3 查看数据库中存储过程的名字 153
9.8 设置触发器 153
9.8.1 建立触发器 153
9.8.2 移去或删除触发器 154
9.8.3 修改触发器 155
练习题9 155
第10章 查询与视图 157
10.1 建立查询 157
10.1.1 打开查询设计器 157
10.1.2 选取要查询的数据文件 158
10.1.3 设置查询设计器的各种条件与属性 159
10.2.1 使用视图设计器创建视图 167
10.2 建立视图 167
10.2.2 使用命令创建和修改视图 173
10.3 使用视图 174
10.3.1 打开视图 174
10.3.2 在视图中更新多个表 174
10.4 重命名视图 175
10.5 删除视图 175
练习题10 175
第11章 VFP程序设计基础 177
11.1 程序文件 177
11.1.1 程序的概念 177
11.1.2 程序文件的建立与执行 177
11.1.3 不同工作方式下的环境设置 179
11.14 输入输出命令 183
11.2 程序控制结构 185
11.2.1 顺序结构 186
11.2.2 分支结构 186
11.2.3 循环结构 188
11.3 函数和过程 190
11.3.1 VFP标准函数 190
11.3.2 自定义函数 194
11.3.3 过程 196
11.3.4 参数传递过程 198
练习题11 200
12.1.1 表单类型 206
12.1 创建表单 206
第12章 表单和表单集 206
12.1.2 用表单设计器创建表单 207
12.2 定制表单 209
12.2.1 使用表单设计器工具栏 209
12.2.2 设置数据环境 210
12.2.3 向表单中添加控件 212
12.2.4 添加新的属性与方法到表单中 214
12.2.5 定义表单的操作行为 214
12.2.6 编辑事件和方法代码 215
12.3 修改表单 215
12.3.4 调整控件的位置 216
12.3.3 对齐控件 216
12.3.2 复制和删除表单控件 216
12.3.1 选择、移动和缩放控件 216
12.3.5 设置控件的Tab键次序 217
12.3.6 预定义常量 218
12.4 表单管理 218
12.4.1 隐藏表单 219
12.4.2 传递参数 219
12.4.3 从表单返回值 219
12.4.4 关闭活动表单 219
12.4.5 运行时属性的设置 220
12.5 保存和运行表单 221
12.5.1 保存表单 221
12.5.2 运行表单 221
12.6 创建表单集 221
练习题12 222
第13章 内部控件 225
13.1 标签控件 225
13.2 文本框控件 226
13.3 编辑框控件 228
13.4 命令按钮控件 229
13.5 命令组控件 233
13.6 选项组控件 235
13.7 复选框控件 237
13.8 列表框控件 239
13.9 组合框控件 243
13.10 微调 245
13.11 图像控件 246
13.12 表格控件 247
13.13 计时器控件 250
13.14 页框控件 252
13.15 线条控件 253
13.16 形状控件 254
13.17 容器控件 256
13.18 OLE控件 257
练习题13 259
第14章 面向对象的程序设计 263
14.1 对象和类 263
14.1.1 对象 263
14.1.2 类 264
14.2 VFP类层次 266
14.2.1 容器类 266
14.3.2 类库文件 267
14.3.1 类设计的考虑 267
14.2.2 控件类 267
14.3 类的设计 267
14.3.3 创建新类 268
14.3.4 添加类属性与方法 271
14.3.5 类的注册 272
14.3.6 调用父类中的方法 273
14.3.7 修改类的定义 273
14.3.8 子类的定义 273
14.3.9 从类中派生对象 273
14.3.10 类的设计和应用实例 274
14.4.1 容器层次中对象的引用 280
14.4.2 设置属性值 280
14.4 对象的操作 280
14.4.3 调用方法 281
14.4.4 对事件的响应 281
14.5 通过编程定义类 282
14.5.1 保护和隐藏类成员 286
14.5.2 将对象加入容器类中 286
14.5.3 设计方法和事件代码 286
14.5.4 防止执行基类中的代码 287
14.5.5 成员数组 287
14.5.6 对象数组 287
14.5.7 编程实例 288
14.6 VFP事件 290
14.6.1 VFP核心事件 290
14.6.3 事件触发顺序 291
14.6.2 容器与对象事件 291
14.7 小结 293
练习题14 293
第15章 菜单设计 297
15.1 启动菜单设计器 297
15.2 菜单设计器的组成 298
15.3 创建和运行菜单 300
15.4 将菜单添加到顶层表单中 301
15.5 设计菜单示例 301
练习题15 305
16.1 报表设计器 306
16.1.1 启动报表设计器 306
第16章 报表设计 306
16.1.2 报表设计工具栏 307
16.1.3 报表控件工具栏 307
16.2 设计报表布局 308
16.2.1 设置报表页面 308
16.2.2 设置报表数据环境 309
16.2.3 数据位置的规划 309
16.3 插入报表控件 310
16.3.1 添加字段 310
16.3.2 添加标签 311
16.3.3 添加图形 311
16.3.4 添加图片 311
16.4 数据分组 312
16.4.3 修改组带区 313
16.4.2 添加多个数据分组 313
16.4.1 添加单个组 313
16.4.4 删除组带区 314
16.4.5 修改分组次序 314
16.5 修改页面布局 314
16.5.1 修改带区 314
16.5.2 精确设置带区高度 314
16.5.3 选择和移动控件 314
16.5.4 复制和删除控件 315
16.5.5 调整控件的大小 315
16.5.6 控件的对齐设置 315
16.5.7 网格线设置 315
16.6.1 打印具有可变长度值的控件 316
16.6 对打印进行控制 316
16.6.2 设置控件的打印选项 317
16.7 运行报表 318
练习题16 319
第17章 编译、调试应用程序 321
17.1 构造应用程序的过程 321
17.1.1 构造应用程序框架 321
17.1.2 将文件加入到项目中 325
17.1.3 引用可修改的文件 326
17.1.4 为一个项目建立应用程序 327
17.2 应用程序的编译和调试 329
17.2.1 常见的错误类型 329
17.2.2 常用的调试技术 330
17.2.3 使用“调试器”进行调试 330
17.3 处理“运行时”的错误 334
练习题17 337
第18章 发布应用程序 338
18.1 发布过程 338
18.2 准备要发布的应用程序 338
18.2.1 选择连编类型 339
18.2.2 考虑硬件、内存和网络问题 339
18.2.3 确保程序在运行时能够正确运行 339
18.2.4 在应用程序中包含资源 340
18.2.5 删除受限制的VFP功能和文件 342
18.3 定制要发布的应用程序 342
18.3.1 保护并文档化源代码 343
18.3.2 调用错误处理和终止系统运行例程 343
18.3.4 修改应用程序的外观 344
18.3.3 给应用程序添加帮助信息 344
18.3.5 备份源代码 345
18.3.6 生成应用程序 345
18.4 准备制作发布磁盘 345
18.4.1 创建发布目录 346
18.4.2 创建发布磁盘 346
18.5 发布过程 346
18.5.1 发布树 347
18.5.2 使用安装向导 347
练习题18 349
附录A 上机实验题 350
上机实验1:建立和使用自由表 350
上机实验2:建立和使用索引 353
上机实验3:表操作 356
上机实验4:SELECT-SQL查询 358
上机实验5:数据库表操作 360
上机实验6:VFP程序设计 362
上机实验7:创建表单 365
上机实验8:面向对象程序设计 368
上机实验9:应用系统设计 373
上机实验10:应用程序编译和发布 378
附录B练习题参考答案 380
练习题1参考答案 380
练习题2参考答案 381
练习题3参考答案 381
练习题4参考答案 382
练习题5参考答案 383
练习题6参考答案 384
练习题7参考答案 386
练习题8参考答案 387
练习题9参考答案 387
练习题10参考答案 388
练习题11参考答案 388
练习题12参考答案 391
练习题13参考答案 392
练习题14参考答案 392
练习题15参考答案 393
练习题16参考答案 394
练习题17参考答案 394
练习题18参考答案 394
参考文献 395