第一章 概述 1
第一节 FoxBASE语言简介 1
第二节 FoxBASE系统概况 1
1.2.1 数据库 1
1.2.2 数据工作区 2
1.2.3 数据库别名 2
1.2.4 记录指针 2
1.2.5 数据类型 3
1.2.6 数据种类 4
1.2.7 常量 4
1.2.8 变量 4
1.2.9 运算符 6
1.2.10 表达式 7
1.2.11 函数 7
1.2.12 命令 8
1.2.13 程序 9
1.2.14 文件 9
1.2.15 交互命令状态 11
1.2.16 编辑和全屏幕编辑 11
1.2.17 菜单和用户定义菜单 11
1.2.18 保留字 12
1.2.19 系统配置文件 12
2.1.4 @...PROMPT 14
2.1.2 ?/?? 14
2.1.3 @...BOX 14
第一节 命令汇总 14
第二章 FoxBASE的命令与函数 14
2.1.1 && 14
2.1.5 @...SAY...GET[VALID] 15
2.1.6 @...TO 16
2.1.7 @...MENU 16
2.1.8 @...SAY...GET 17
2.1.9 ACCEPT 17
2.1.10 APPEND 18
2.1.11 APPEND FROM[FIELDS] 18
2.1.12 APPEND FROM 19
2.1.13 AVERAGE 19
2.1.14 BROWSE[NOMODIFY] 20
2.1.15 BROWSE 21
2.1.18 CHANGE 22
2.1.19 CLEAR 22
2.1.16 CALL 22
2.1.17 CANCEL 22
2.1.20 CLEAR ALL 23
2.1.21 CLEAR FIELDS 23
2.1.22 CLEAR GETS 23
2.1.23 CLEAR MEMORY 23
2.1.24 CLEAR PROGRAM 23
2.1.25 CLEAR PROMPT 23
2.1.26 CLEAR TYPEAHEAD 24
2.1.27 CLOSE 24
2.1.28 CONTINUE 24
2.1.29 COPY 24
2.1.34 CREATE 25
2.1.33 COUNT 25
2.1.30 COPY FILE 25
2.1.31 COPY STRUCTURE 25
2.1.32 COPY STRUCTURE EXTENDED 25
2.1.35 CREATE FROM 26
2.1.36 CREATE LABEL 26
2.1.37 CREATE REPORT 27
2.1.38 CREATE VIEW 28
2.1.39 DELETE 28
2.1.40 DELETE FILE 28
2.1.41 DIMENSION 28
2.1.44 DISPLAY FILES 29
2.1.46 DISPLAY MEMORY 29
2.1.45 DISPLAY HISTORY 29
2.1.43 DISPLAY 29
2.1.42 DIR 29
2.1.47 DISPLAY STATUS 30
2.1.48 DISPLAY STRUCTURE 30
2.1.49 DO 30
2.1.50 DO CASE 30
2.1.51 DO WHILE 30
2.1.52 EDIT 31
2.1.53 JEJCT 31
2.1.54 ERASE 31
2.1.55 EXIT 31
2.1.56 FIND 31
2.1.60 HELP 32
2.1.59 GO/GOTO 32
2.1.58 GATHER 32
2.1.57 FLUSH 32
2.1.61 IF 33
2.1.62 INDEX 33
2.1.63 INDEX[FOR] 33
2.1.64 INPUT 33
2.1.65 INSERT 34
2.1.66 JOIN 34
2.1.67 KEYBOARD 34
2.1.68 LABEL 34
2.1.72 LIST MEMORY 35
2.1.74 LIST STRUCTURE 35
2.1.73 LIST STATUS 35
2.1.71 LIST HISTORY 35
2.1.70 LIST FILES 35
2.1.69 LIST 35
2.1.75 LOAT 36
2.1.76 LOCATE 36
2.1.77 LOOP 36
2.1.78 MENU 37
2.1.79 MENU BAR 37
2.1.80 MENU TO 37
2.1.81 MODIFY COMMAND 38
2.1.85 MODIFY STRUCTURE 39
2.1.84 MODIFY REPORT 39
2.1.83 MODIFY LABEL 39
2.1.82 MODIFY FILE 39
2.1.86 NOTE 40
2.1.87 ON ERROR 40
2.1.88 ON ESCAPE 41
2.1.89 ON KEY 41
2.1.90 PACK 42
2.1.91 PARAMETERS 42
2.1.92 PRIVATE 43
2.1.93 PROCEDURE 43
2.1.94 PUBLIC 43
2.1.95 QUIT 43
2.1.96 READ 43
2.1.100 REINDEX 44
2.1.101 RELEASE 44
2.1.98 READ MENU BAR 44
2.1.99 RECALL 44
2.1.97 READ MENU 44
2.1.102 RELEASE MODULE 45
2.1.103 RENAME 45
2.1.104 REPLACE 45
2.1.105 REPORT 45
2.1.106 RESTORE 46
2.1.107 RESTORE SCREEN 46
2.1.108 RESUME 46
2.1.109 RETRY 46
2.1.110 RETURN 46
2.1.114 SCATTER 47
2.1.113 SAVE 47
2.1.111 RUN 47
2.1.112 SAVE SCREEN 47
2.1.115 SCROLL 48
2.1.116 SEEK 48
2.1.117 SELECT 48
2.1.118 SET 48
2.1.122 SET CARRY 49
2.1.124 SET CLEAR 49
2.1.123 SET CENTURY 49
2.1.125 SET COLOR 49
2.1.121 SET BELL 49
2.1.120 SET ALTERNATE TO 49
2.1.119 SET ALTERNATE 49
2.1.126 SET COLOR TO 50
2.1.127 SET CONFIRM 50
2.1.128 SET CONSOLE 50
2.1.129 SET DATE 50
2.1.130 SET DEBUG 51
2.1.131 SET DECIMALS TO 51
2.1.132 SET DEFAULT TO 51
2.1.133 SET DELETED 51
2.1.134 SET DELIMITERS 51
2.1.135 SET DELIMITERS TO 51
2.1.136 SET DEVICE TO 51
2.1.141 SET EXCLUSIVE 52
2.1.140 SET EXACT 52
2.1.137 SET DOHISTORY 52
2.1.138 SET ECHO 52
2.1.139 SET ESCAPE 52
2.1.142 SET FIELDS 53
2.1.143 SET FIELDS TO 53
2.1.144 SET FILTER TO 53
2.1.145 SET FIXED 53
2.1.146 SET FORMAT TO 53
2.1.147 SET FUNCTION TO 53
2.1.150 SET HISTORY 54
2.1.151 SET HISTORY TO 54
2.1.152 SET INDEX TO 54
2.1.149 SET HELP 54
2.1.148 SET HEADING 54
2.1.153 SET INTENSITY 55
2.1.154 SET MARGIN TO 55
2.1.155 SET MEMOWIDTH TO 55
2.1.156 SET MENU 55
2.1.157 SET MESSAGE TO〈字串表达式〉 55
2.1.158 SET MESSAGE TO〈数值表达式〉 55
2.1.159 SET ODOMETER TO 56
2.1.160 SET ORDER TO 56
2.1.161 SET PATH TO 56
2.1.162 SET PRINT 56
2.1.163 SET PRINTER TO 56
2.1.167 SET SCOREBOARD 57
2.1.166 SET SAFETY 57
2.1.164 SET PROCEDURE TO 57
2.1.165 SET RELATION TO 57
2.1.168 SET STATUS 58
2.1.169 SET STEP 58
2.1.170 SET TALK 58
2.1.171 SET TYPEAHEAD TO 58
2.1.172 SET UNIQUE 59
2.1.173 SET VIEW TO 59
2.1.174 SKIP 59
2.1.175 SORT 59
2.1.176 STORE 59
2.1.179 TEXT 60
2.1.180 TOTAL 60
2.1.178 SUSPEND 60
2.1.177 SUM 60
2.1.181 TYPE 61
2.1.182 UPDATE 61
2.1.183 UNLOCK 61
2.1.184 USE 61
2.1.185 WAIT 62
2.1.186 ZAP 62
第二节 函数汇总 62
2.2.1 & 62
2.2.6 BOF( ) 63
2.2.5 AT( ) 63
2.2.7 CDOW( ) 63
2.2.2 ABS( ) 63
2.2.3 ALIAS( ) 63
2.2.4 ASC( ) 63
2.2.8 CHR( ) 64
2.2.9 CMONTH( ) 64
2.2.10 COL( ) 64
2.2.11 CTOD( ) 64
2.2.12 DATE( ) 64
2.2.13 DAY( ) 64
2.2.14 DBF( ) 64
2.2.15 DELETED( ) 64
2.2.20 ERROR( ) 65
2.2.22 PCOUNT( ) 65
2.2.21 EXP( ) 65
2.2.17 DOW( ) 65
2.2.19 EOF( ) 65
2.2.18 DTOC( ) 65
2.2.16 DISKSPACE( ) 65
2.2.23 FIELD( ) 66
2.2.24 FILE( ) 66
2.2.25 FKLABEL( ) 66
2.2.26 FKMAX( ) 66
2.2.27 FLOCK( ) 66
2.2.28 FOUND( ) 66
2.2.30 IIF( ) 67
2.2.31 INKEY( ) 67
2.2.29 GETENV( ) 67
2.2.32 INT( ) 68
2.2.33 ISALPHA( ) 68
2.2.34 ISCOLOR( ) 68
2.2.35 ISLOWER( ) 68
2.2.36 ISUPPER( ) 68
2.2.37 LEFT( ) 68
2.2.42 LTRIM( ) 69
2.2.45 MESSAGE( ) 69
2.2.43 LUPDATE( ) 69
2.2.44 MAX( ) 69
2.2.41 LOWER( ) 69
2.2.40 LOG( ) 69
2.2.39 LOCK( ) 69
2.2.38 LEN( ) 69
2.2.46 MIN( ) 70
2.2.47 MOD( ) 70
2.2.48 MONTH( ) 70
2.2.49 NDX( ) 70
2.2.50 OS( ) 70
2.2.51 PCOL( ) 70
2.2.52 PROW( ) 70
2.2.53 READKEY( ) 71
2.2.54 RECCOUNT( ) 71
2.2.60 ROUND( ) 72
2.2.59 RLOCK( ) 72
2.2.58 RIGHT( ) 72
2.2.57 REPLICATE( ) 72
2.2.55 RECNO( ) 72
2.2.56 RECSIZE( ) 72
2.2.61 ROW( ) 73
2.2.62 RTRIM( ) 73
2.2.63 SELECT( ) 73
2.2.64 SPACE( ) 73
2.2.65 SQRT( ) 73
2.2.66 STR( ) 73
2.2.67 STUFF( ) 73
2.2.72 SYS(3) 74
2.2.75 SYS(7) 74
2.2.74 SYS(6) 74
2.2.73 SYS(5) 74
2.2.71 SYS(2) 74
2.2.70 SYS(1) 74
2.2.69 SYS(0) 74
2.2.68 SUBSTR( ) 74
2.2.76 SYS(9) 75
2.2.77 SYS(10) 75
2.2.78 SYS(11) 75
2.2.79 SYS(12) 75
2.2.80 SYS(13) 75
2.2.81 SYS(14) 75
2.2.82 SYS(15) 75
2.2.87 SYS(102) 76
2.2.86 SYS(101) 76
2.2.83 SYS(16) 76
2.2.84 SYS(17) 76
2.2.85 SYS(100) 76
2.2.88 SYS(103) 77
2.2.89 SYS(2000) 77
2.2.90 SYS(2001) 77
2.2.91 SYS(2002) 77
2.2.92 SYS(2003) 77
2.2.93 SYS(2004) 77
2.2.94 SOUNDEX( ) 77
2.2.99 UPDATED( ) 78
2.2.101 VAL( ) 78
2.2.100 UPPER( ) 78
2.2.97 TRIM( ) 78
2.2.98 TYPE( ) 78
2.2.96 TRANSFORM( ) 78
2.2.95 TIME( ) 78
2.2.102 VERSION( ) 79
2.2.103 YEAR( ) 79
第三章 FoxBASE的使用与操作 80
第一节 运行FoxBASE程序的上机步骤 80
3.1.1 HHBIOS 2.13I汉字系统使用说明 80
3.1.2 FoxBASE系统的安装、启动和退出 114
3.2.1 系统配置文件的作用 115
3.2.2 系统配置文件的使用 115
第二节 系统配置文件的应用 115
3.2.3 系统配置项的说明 116
3.2.4 系统配置项清单 117
3.2.5 系统配置文件的一个实例 118
第三节 数据库的基本操作 119
3.3.1 数据库文件的建立 119
3.3.2 数据库文件的打开和关闭 121
3.3.3 数据库的索引 122
3.3.4 数据库的关系操作 124
3.3.5 数据库记录的检索 127
3.3.6 数据库记录的增加 129
3.3.7 数据库记录的修改 131
3.3.8 数据库记录的删除 133
3.3.9 数据库的复制 134
3.3.10 数据库的重新组织 137
3.3.11 数据库文件结构的修改 139
3.3.12 数据计算 140
3.3.13 数据输出 144
3.3.14 数据库参数和状态的检测 149
3.3.15 文件管理 150
3.3.16 内存变量操作 151
第四节 程序的建立和调试 154
3.4.1 程序的编辑 154
3.4.2 程序的调试 155
第五节 过程文件的组合 156
3.5.1 过程组合的优点 157
3.5.2 过程文件的组合方法 157
第六节 命令文件的编译 158
3.6.1 编译作用 158
3.6.2 编译方法 159
第四章 使用技巧与常见错误处理 160
第一节 提高效率的方法 160
4.1.1 提高应用程序的运行效率 160
4.1.2 提高数据录入速度的方法 162
4.2.2 用函数实现软件的计时保护 164
4.2.1 快速编制软件使用说明书的技巧 164
第二节 使用技巧 164
4.2.3 在数据库中插入多条记录的方法 165
4.2.4 程序时钟延时技术 166
4.2.5 自动生成查询程序的方法 166
4.2.6 数值型字段值为零的处理技术 167
第三节 程序设计的基本方法 170
第四节 用户定义函数 170
4.4.1 用户定义函数的构造 171
4.4.2 用户定义函数的调用 171
第五节 宏替换&的使用 173
4.5.1 替换数据库文件名 173
4.5.6 实现字符串的插入 174
4.5.5 扩充FIND命令的功能 174
4.6.1 程序的兼容 174
第六节 与dBASEⅢ的兼容问题 174
4.5.3 替换一条命令 174
4.5.2 替换字段名 174
4.5.4 替换一个表达式 174
4.6.2 数据的兼容 175
4.6.3 系统配置的兼容性 176
第七节 FoxBASE应用软件中的容错处理 178
4.7.1 错误检测 178
4.7.2 错误处理 179
第八节 出错报告和出错信息 183
4.8.1 发生语法错误时的出错报告 183
4.8.3 发生内部错误时的出错报告 184
4.8.4 错误的处理或恢复 184
4.8.2 发生逻辑错误时的出错报告 184
4.8.5 出错信息一览表 185
第五章 应用举例 198
第一节 举例一:菜单类 198
5.1.1 建立下拉式菜单 198
5.1.2 建立上弹菜单 199
5.1.3 建立条形光带菜单 200
5.1.4 通用下拉式菜单程序 201
第二节 举例二:输入类 203
5.2.1 数据库结构和记录的全屏幕编辑 203
5.2.2 兼有查询和编辑功能的程序 204
5.2.3 单项数据的全屏幕成批输入程序 205
第三节 举例三:处理类 206
5.3.1 三个数据库联接 206
5.2.5 行式编辑 206
5.2.4 页式编辑 206
5.3.2 字段名各不相同的两个数据库之间的数据传送 207
5.3.3 IIF( )函数的运用 208
第四节 举例四:输出类 208
5.4.1 行式查询 208
5.4.2 简单图形输出程序 209
5.4.3 编制框线表格 210
5.4.4 编制带有字段内容的框线表格 211
5.4.5 具有分页功能的文本输出程序 213
第五节 举例五:辅助类 215
5.5.1 选字段程序 215
5.5.2 出错时由用户选择处理方法的出错处理程序 216
5.5.3 自动进行出错处理的程序 217
5.5.4 改变数据库中字段排列顺序 218
5.5.5 活动的屏幕提示 219
5.5.6 输出键盘上各键的ASCII码 220
5.5.7 口令判别程序 221
第六节 举例六:表格通用打印程序 222
5.6.1 打印数据结构 222
5.6.2 表格结构的生成 223
5.6.3 报表打印 223
5.6.4 一个完整的通用报表打印子系统 223
第七节 举例七:数据库记录位置变换的通用程序 229
5.7.1 把一个记录插入另一记录之后 229
5.7.2 把一组记录插入另一记录之后 230
5.7.3 两个记录互换位置 231
5.7.4 两个大小相等的记录组互换位置 231
第八节 举例八:屏幕浏览式检索系统 232