目录 1
第1章 数据库基础知识 1
1.1 数据库概述 1
1.1.1 数据、信息和数据处理 1
1.1.2 数据处理的三个阶段 1
1.1.3 数据库系统的组成 3
1.1.4 数据库体系结构 4
1.1.5 数据库系统的特点 5
1.2 现实世界的数据描述 6
1.1.6 数据库系统发展趋势 6
1.2.1 数据的描述 7
1.2.2 实体模型 7
1.2.3 数据模型 9
1.3 数据库管理系统 13
1.3.1 数据库管理系统的功能 13
1.3.2 数据库管理系统的组成 13
1.3.3 DBMS和OS的关系 15
1.4 FoxPro 2.6数据库管理系统 15
1.4.1 FoxPro的性能指标 16
1.4.2 FoxPro系统安装 17
1.4.3 FoxPro系统的启动 18
1.4.4 FoxPro系统配置 21
1.4.5 CONFIG.FP中的特殊项 22
1.4.6 功能键和宏定义 23
1.4.7 FoxPro资源数据库 24
习题一 25
2.1.1 FoxPro操作方式 26
2.1.2 控制项和键盘约定 26
2.1 FoxPro系统菜单 26
第2章 FoxPro 2.6基础知识 26
2.1.3 FoxPro系统菜单 27
2.1.4 System菜单 28
2.1.5 系统帮助(Help) 29
2.1.6 Window菜单(窗口操作) 30
2.1.7 File菜单(文件打开、保存和打印) 32
2.2 文本编辑器 33
2.2.1 文本编辑功能键定义 34
2.2.2 Edit菜单(编辑操作) 35
2.2.3 文本编辑实例 37
2.3.2 变量 40
2.3 FoxPro语言基础 40
2.3.1 数据 40
2.3.3 表达式 41
2.3.4 文件类型 43
2.3.5 命令语法规则 44
2.4 内存变量操作 45
2.4.1 内存变量的建立与输出 45
2.4.2 内存变量存储显示 46
2.4.3 内存变量的释放 47
2.4.4 内存变量的保存与恢复 48
2.5 常用函数及其应用 49
2.5.1 字符处理函数 49
2.5.2 数值处理函数 56
2.5.3 日期和时间函数 59
习题二 61
第3章 数据库建立与操作 64
3.1 数据库设计 64
3.1.1 系统分析 64
3.1.4 物理结构设计 65
3.1.3 逻辑结构设计 65
3.1.2 概念结构设计 65
3.2 教学管理数据库设计 66
3.2.1 教学管理数据库系统分析和概念设计 66
3.2.2 教学管理数据库逻辑结构设计 67
3.2.3 教学管理数据库物理结构设计 69
3.3 数据库结构定义 70
3.3.1 建立与修改数据库结构(CREATE/MODIFY STRUCTURE) 70
3.3.2 显示数据库结构(LIST STRUCTURE) 71
3.3.3 打开与关闭数据库(SELECT/USE/CLOSE) 73
3.3.4 获取数据库结构和状态信息 74
3.4 记录的基本操作 76
3.4.1 添加记录(APPEND) 76
3.4.2 显示记录(LIST/DISPLAY) 78
3.4.3 修改记录(EDIT/REPLACE) 79
3.4.4 记录定位(GO/SKIP/LOCATE) 80
3.4.5 记录指针管理 82
3.4.6 插入记录(INSERT) 83
3.4.7 删除记录(DELETE/ZAP/PACK) 84
3.4.8 恢复记录(RECALL) 85
3.5 Record菜单记录操作 86
3.4.9 筛选记录(FILTER) 86
3.5.1 表达式生成器 87
3.5.2 Record弹出式菜单 89
3.5.3 查询定位 89
3.5.4 字段修改 90
3.6 记录浏览 91
3.6.1 记录浏览的基本操作 91
3.6.2 浏览菜单的功能 92
3.6.3 记录操作 93
3.6.4 字段操作 94
3.6.5 记录分区 95
3.6.6 按不同格式浏览 97
3.6.7 状态栏设置 97
3.6.8 BROWSE命令 98
3.6.9 EDIT/CHANGE命令 104
习题三 105
第4章 Foxpro结构化程序设计 108
4.1 程序设计初步 108
4.1.1 如何编写一个程序 108
4.1.2 程序的执行和注释(DO/*/ ) 109
4.1.3 程序流程图 110
4.2 顺序结构程序设计 111
4.2.1 格式输出(@...SAY) 111
4.2.2 基本输入(ACCEPT/INPUT/WAIT) 115
4.2.3 格式输入(@...GET) 115
4.2.4 清屏与画框(@...CLEAR/@...TO) 118
4.2.5 颜色表示与设置 120
4.3 条件分支程序设计 121
4.3.1 条件分支设计(IF…ENDIF) 121
4.3.2 条件分支函数(IIF()) 123
4.3.3 多重分支(DOCASE...ENDCASE) 124
4.4 循环结构程序设计 126
4.4.1 FOR循环 127
4.4.2 WHILE循环 128
4.4.3 SCAN循环 129
4.4.4 退出循环(EXIT/LOOP) 130
4.5 过程和函数程序设计 130
4.5.1 自定义函数 130
4.5.2 过程设计 132
4.5.3 参数传递方式 133
4.5.4 变量的作用域 135
4.5.5 递归调用 138
4.6 数据库程序操作 138
4.6.1 文件名处理程序设计 139
4.6.2 用程序方式添加记录 142
4.6.3 用程序方式删除或恢复记录 144
4.6.4 根据输入条件查询记录 146
4.6.5 用表格方式输入浏览记录 147
习题四 149
5.1.1 索引概念 152
5.1 数据库索引方法 152
第5章 数据库高级操作 152
5.1.2 索引文件的类型 153
5.1.3 索引建立 153
5.1.4 索引设置和关闭 155
5.1.5 获取索引状态 156
5.1.6 索引维护 158
5.1.7 索引查询 160
5.2 Database菜单 161
5.2.1 Database菜单的意义 161
5.2.2 记录排序 162
5.2.3 Setup操作 163
5.2.4 数值计算 166
5.2.5 记录成批输入/输出 171
5.2.6 自动建立数据库 173
5.3 备注字段操作方法 175
5.3.1 备注字段操作 175
5.3.2 备注字段逐行操作 176
5.3.3 备注字段内容成块输入输出 178
5.3.4 与备注字段相关的命令 178
5.4.2 多库物理连接 180
5.4 多库连接操作 180
5.4.1 连接操作定义 180
5.4.3 多库逻辑连接 182
5.4.4 一对多关系连接 184
5.4.5 获取关系状态 185
5.4.6 多库修改操作 186
5.5 VIEW窗口和多库操作 187
5.5.1 VIEW窗口的意义 187
5.5.2 建立关系的方法 191
5.5.3 建立和恢复视图文件 192
5.5.4 建立一对多关系 194
习题五 195
第6章 报表设计与生成 197
6.1 程序控制打印 197
6.1.1 设置打印机 197
6.1.2 打印页控制 198
6.1.3 获取打印机状态 198
6.1.4 利用打印系统变量控制打印 199
6.2 报表生成器概述 200
6.2.1 报表生成器原理 200
6.2.2 启动报表生成器 201
6.2.3 退出报表生成器 202
6.2.4 报表生成器弹出式菜单 203
6.3 基本报表格式设计 204
6.3.1 报表版面设计 204
6.3.2 报表快速生成 206
6.3.3 编辑报表格式 207
6.3.4 预览报表 208
6.3.5 修改报表格式 208
6.3.6 报表输出 210
6.4.1 表达式格式设计 212
6.4 报表高级设计 212
6.4.2 表达式计算设计 214
6.4.3 变量计算设计 215
6.4.4 报表总计设计 217
6.4.5 分组设计 218
6.4.6 自定义函数设计 220
6.4.7 多库报表设计 221
6.4.8 对象管理 222
习题六 223
7.1.1 数据定义 225
7.1 查询语言简述 225
第7章 查询语言SQL与RQBE 225
7.1.2 数据操纵 226
7.1.3 数据查询 226
7.2 SELECT命令的基本用法 227
7.2.1 基本查询 227
7.2.2 SQL函数的使用方法 229
7.2.3 带条件查询(WHERE) 229
7.3 复杂查询 231
7.3.1 多库查询 231
7.3.3 谓词演算 232
7.3.2 SEL.ECT嵌套 232
7.4 查询结果处理 234
7.4.1 输出排序 234
7.4.2 输出重定向(INTO) 235
7.4.3 输出合并(UNION) 236
7.4.4 分组统计(GROUP)与筛选(HAVING) 236
7.5 RQBE系统概述 237
7.5.1 RQBE原理 237
7.5.2 RQBE的进入与退出 238
7.5.3 RQBE画面 239
7.5.4 RQBE弹出式菜单 240
7.6 RQBE的应用方法 241
7.6.1 基本查询 241
7.6.2 多库查询操作 243
7.6.3 输出操作 245
习题七 248
第8章 FoxPro高级程序设计 249
8.1 数组程序设计 249
8.1.1 数组定义与置值 249
8.1.2 数组下标的组织与检索 250
8.1.3 数组插入、删除与长度检测 252
8.1.4 数组拷贝与排序 254
8.1.5 利用数组取磁盘目录 255
8.1.6 利用数组读取字段信息 255
8.1.7 利用数组编辑与拷贝 256
8.2 窗口程序设计 257
8.2.1 窗口定义 257
8.2.2 窗口的基本操作 259
8.2.3 窗口辅助操作 261
8.2.4 窗口状态测量和设置 263
8.3.1 什么是事件驱动程序 264
8.3 事件驱动程序设计 264
8.3.2 键控管理程序设计 265
8.3.3 错误处理程序设计 269
8.4 网络程序设计 271
8.4.1 网络文件共享与独占 272
8.4.2 文件或记录的加锁与解锁 272
8.4.3 FoxPro隐含锁定 275
8.4.4 死锁及其解除方法 276
8.5.2 模板语言 278
8.5 程序生成技术 278
8.5.1 程序生成概念 278
8.5.3 程序生成方法 280
8.5.4 参数变换法程序生成器的实现 281
8.6 低级文件操作 283
8.6.1 低级文件概念 283
8.6.2 文件的建立和关闭 284
8.6.3 低级文件的读写操作 285
8.6.4 低级文件的其他操作 288
习题八 290
9.1.1 理解REA 292
第9章 屏幕生成器及其应用 292
9.1 GET对象与READ 292
9.1.2 获取GET对象号 296
9.1.3 显示GET信息 297
9.2 屏幕控制项程序设计 298
9.2.1 控制项概述 298
9.2.2 按钮程序设计 300
9.2.3 单选按钮程序设计 303
9.2.4 弹出式菜单程序设计 305
9.2.5 列表程序设计 306
9.2.6 复选按钮程序设计 307
9.2.7 无形按钮程序设计 308
9.2.8 文本编辑 309
9.3 屏幕生成器概述 311
9.3.1 屏幕生成器结构 311
9.3.2 屏幕生成器使用步骤 312
9.3.3 进入和退出屏幕生成器 313
9.3.4 屏幕设计画面 313
9.3.5 屏幕生成器弹出式菜单 313
9.4.1 屏幕布局 315
9.4 屏幕生成器基本用法 315
9.4.2 字段信息快速获取 318
9.4.3 建立Field对象 320
9.4.4 建立按钮对象 322
9.4.5 生成屏幕程序 324
9.5 屏幕生成器其他用法 327
9.5.1 建立单选按钮对象 327
9.5.2 建立复选按钮对象 328
9.5.3 建立弹出式菜单对象 328
9.5.4 建立列表对象 329
9.5.5 建立无形按钮对象 330
9.5.6 对象组合操作 331
习题九 331
第10章 菜单生成、项目制作和导航器应用 333
10.1 菜单系统概述 333
10.1.1 菜单结构 333
10.1.2 菜单属性 334
10.1.3 系统菜单 335
10.2.1 条形菜单定义 336
10.2 条形菜单程序设计 336
10.2.2 条形菜单触发控制 337
10.2.3 条形菜单相关操作 337
10.3 弹出式菜单程序设计 340
10.3.1 弹出式菜单定义 340
10.3.2 弹出式菜单项触发控制 341
10.3.3 弹出式菜单相关操作 342
10.4 菜单生成器概述 344
10.4.1 菜单生成器原理 344
10.4.3 菜单生成器使用步骤 345
10.4.2 菜单程序模式 345
10.4.4 菜单生成器的进入与退出 346
10.4.5 Menu弹出式菜单 347
10.5 菜单生成器使用方法 347
10.5.1 条形菜单描述 347
10.5.2 弹出式菜单描述 349
10.5.3 菜单程序生成 350
10.5.4 用户菜单程序 351
10.5.5 实用菜单系统问题 353
10.6.1 项目生成器原理 354
10.6 项目制作方法 354
10.6.2 建立与修改项目参数数据库 355
10.6.3 Project弹出式菜单 357
10.6.4 项目生成 358
10.7 导航器简介 359
10.7.1 Wizard概述 359
10.7.2 Wizard的使用方法 360
10.7.3 Table Wizard的应用 361
习题十 363
参考文献 366