




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第7 7章章 程序设计根底程序设计根底 福建农林大学东方学院7.1 7.1 命令格式命令格式 由两部分组成由两部分组成 命令动词,表示应执行的操作命令动词,表示应执行的操作 假设干个短语,对操作提供某些限制性假设干个短语,对操作提供某些限制性阐明。阐明。 普通格式如下:普通格式如下: 命令动词命令动词 短语短语 如:如:copy to aa for copy to aa for 性别性别= =“男男命令书写的规那么命令书写的规那么 命令以命令动词开头命令以命令动词开头 用空格来分隔各单词短语用空格来分隔各单词短语 命令的最长是命令的最长是254254个字符,用分行符;分行个字符,用分行符;分
2、行 命令动词和关键字可以缩写为前四个字符命令动词和关键字可以缩写为前四个字符 如如 MODIFY STRUCTURE MODIFY STRUCTURE 可写为可写为 MODI STRU MODI STRU 不分大小写,可以混合运用不分大小写,可以混合运用 变量名、字段名和文件名时,应防止与命令变量名、字段名和文件名时,应防止与命令动词和关键字同名,以免运转时发生混乱动词和关键字同名,以免运转时发生混乱与表有关的命令与表有关的命令 与表有关的命令格式:与表有关的命令格式: 命令动词命令动词 范围范围 FOR FOR FIELDS FIELDS 命令中的命令中的 FOR FOR、FIELDSFIE
3、LDS是关键字,用户是关键字,用户不得随意更改。不得随意更改。 商定:商定: 表示可选项表示可选项, ,不选用使,系统自动运用默不选用使,系统自动运用默许值许值 表示必选项表示必选项 :表示对表记录操作的范围:表示对表记录操作的范围 ALL ALL 表示全体记录表示全体记录 NEXT N NEXT N 当前记录开场后续合计当前记录开场后续合计 N N 个记个记录录 RECORD N RECORD N 特指第特指第 N N 号记录。号记录。 REST REST 从当前记录开场到表尾的一切记从当前记录开场到表尾的一切记录录 FORFOR条件条件 选择操作选择操作 FIELDS FIELDS 投影操
4、作投影操作与表有关的命令与表有关的命令操作释例操作释例 Go 3 Disp all Go 2 Disp next 2 Go 3 Disp rest Go 3 Disp record 5编号 姓名101 张三102 王一103 刘六104 李四105 赵七 朱八表一Go 1List for 编号101.and.编号“105选择操作Go 1List fields 姓名投影操作7.2 7.2 数据库的操作命令数据库的操作命令 常用的操作命令常用的操作命令 包括包括 数据库的建立数据库的建立 翻开翻开 设置设置 封锁封锁 删除删除1.1.创建数据库创建数据库CREATE DATABASE CREATE
5、 DATABASE 命令命令命令格式:命令格式:CREATE DATABASE CREATE DATABASE 数据库名数据库名|?|?命令功能:用于创建一个数据库命令功能:用于创建一个数据库阐明阐明: :(1)(1)数据库名曾经存在,那么提示新的途径或文件名数据库名曾经存在,那么提示新的途径或文件名(2)(2)参数参数“?“?或无参数,弹出对话框,位置及称号或无参数,弹出对话框,位置及称号(3)(3)数据库以数据库以.DBC.DBC为其扩展名,以为其扩展名,以.DCT.DCT为备注文件,为备注文件,索引文件那么以索引文件那么以.DCX.DCX为扩展名为扩展名(4)(4)该命令以独占方式创建并
6、翻开一个数据库该命令以独占方式创建并翻开一个数据库例如例如: :创建一个名为创建一个名为t1.dbct1.dbc的数据库,并显示有关数的数据库,并显示有关数据库的信息据库的信息CREATE DATABASE t1 CREATE DATABASE t1 创建数据库创建数据库t1t1CLEAR CLEAR 去除屏幕去除屏幕DISPLAY DATABASE DISPLAY DATABASE 显示数据库显示数据库t1t1信息信息2.2.翻开数据库翻开数据库 用用OPEN DATABASEOPEN DATABASE命令翻开曾经存在的数命令翻开曾经存在的数据库据库 命令格式:命令格式: OPEN DATA
7、BASE OPEN DATABASE 数据库名数据库名|?|? 命令功能命令功能: : 翻开一个指定的数据库。翻开一个指定的数据库。 阐明阐明: :3.3.设置当前数据库设置当前数据库 SET DATABASE TO SET DATABASE TO 命令命令 命令格式:命令格式: SET DATABASE TO SET DATABASE TO 数据库名数据库名 命令功能命令功能: : 设置当前数据库。设置当前数据库。阐明:阐明:(1)(1)数据库名为当前要翻开的数据库称号数据库名为当前要翻开的数据库称号(2)(2)略名,弹出一个略名,弹出一个显库显库对话框对话框例如:例如:OPEN DATAB
8、ASE t1 OPEN DATABASE t1 库库t1.dbct1.dbcOPEN DATABASE t2 OPEN DATABASE t2 库库t2.dbct2.dbcDISPLAY DATABASE DISPLAY DATABASE 显示当库显示当库t2.dbct2.dbc的信的信息息SET DATABASE TO t1 SET DATABASE TO t1 置置t1t1为当前库为当前库DILPLAY DATABASE DILPLAY DATABASE 显示当库显示当库t1t1的信息的信息SET DATABASE TO t2 SET DATABASE TO t2 设设t2t2为当库为当库
9、DISPLAY DATABASE DISPLAY DATABASE 显库显库t2.dbct2.dbc的信息的信息4.4.封锁数据库封锁数据库命令格式: CLOSE DATABASE ALL阐明:ALL用于封锁一切翻开的数据库假设没有指定此参数,那么将封锁当前数据库5.5.删除数据库删除数据库 命令格式:命令格式: DELETE DATABASE DELETE DATABASE 数据库名数据库名|? |? DELETE TABLESDELETE TABLESRECYCLERECYCLE阐明阐明 要删除的数据库文件必需保证处于非运用形状要删除的数据库文件必需保证处于非运用形状 ?弹出一个?弹出一个
10、“删除对话框删除对话框 DELETE TABLESDELETE TABLES删除数据库中包含的表和包含这些删除数据库中包含的表和包含这些表的数据库表的数据库 RECYCLERECYCLE文件放入回收站中,可恢复删除的文件文件放入回收站中,可恢复删除的文件 SET SAFETYSET SAFETY的值为的值为ONON,删文件前会提示用户,删文件前会提示用户 SET SAFTYSET SAFTY设置为设置为OFFOFF,VFPVFP将不做任何提示将不做任何提示表的操作命令表的操作命令 包括: 创建表 翻开一个存在的表 将一个自在表参与到数据库中去 从数据库中移去表 显示表中信息 封锁 删除表1.1
11、.创建表创建表 命令格式:命令格式: CREATE CREATE数据库表名数据库表名 命令功能:命令功能: 创建数据库表或自在表创建数据库表或自在表, ,其扩展名为其扩展名为.dbf.dbf 如有数据库翻开,那么该表是数据库表,如有数据库翻开,那么该表是数据库表,且已参与到该数据库中,否那么该表是且已参与到该数据库中,否那么该表是自在表自在表 例如例如: : 新建一个表新建一个表a1,a1,将它包含到数据库将它包含到数据库t1t1中中 OPEN DATABASE t1 &OPEN DATABASE t1 &翻开数据库翻开数据库t1t1 CREATE TABLE a1 CREATE TABLE
12、a1 & &创建表创建表a1.dbf,a1.dbf,将其包含到数据库将其包含到数据库t1t1中中2.2.将自在表参与到数据库中将自在表参与到数据库中 命令格式:命令格式: ADD TABLE ADD TABLE自在表名自在表名|?|? 阐明阐明: : 1 1自在表名指定要参与到一个已翻开的自在表名指定要参与到一个已翻开的数据库中的自在表的称号数据库中的自在表的称号 2 2不指定称号或不指定称号或 “ “?作为参数,弹出对话?作为参数,弹出对话框框 3 3表一旦参与到库中,不再是自在表表一旦参与到库中,不再是自在表 4 4可以经过可以经过REMOVE TABLEREMOVE TABLE命令将该表
13、从数据命令将该表从数据库中移出,使之成为新的自在表库中移出,使之成为新的自在表库中表的一些规定:库中表的一些规定:必需是一个有效的必需是一个有效的.DBF.DBF文件文件不能与数据库中已存在的表重名不能与数据库中已存在的表重名一个表只能属于一个数据库,不能再成一个表只能属于一个数据库,不能再成为其他数据库中的表为其他数据库中的表3.3.将表从数据库中移出将表从数据库中移出 命令格式:命令格式: REMOVE TABLE REMOVE TABLE 数据库表名数据库表名|? |? DELETEDELETERECYCLERECYCLE 阐明:阐明: 1 1参数参数? ?或忽略数据库表名时,将翻开对话
14、框或忽略数据库表名时,将翻开对话框 2 2参数参数DELETE DELETE 用于指定将表从数据库和磁盘中删除用于指定将表从数据库和磁盘中删除 3 3RECYCLERECYCLE参数参数, ,先放回收站中,不立刻删,可恢复先放回收站中,不立刻删,可恢复 4 4与表相连的主索引、默许值及有效性规那么将被删与表相连的主索引、默许值及有效性规那么将被删除除 5 5当一个表从数据库中移出时,它将变成一个自在表当一个表从数据库中移出时,它将变成一个自在表例如例如 建建2 2个表并参与到库个表并参与到库t1t1中,而后执行删除命令中,而后执行删除命令 OPEN DATABASE t1 OPEN DATAB
15、ASE t1 翻开数据库翻开数据库 CREATE c1 CREATE c1 创建表创建表c1.dbfc1.dbf CREATE c2 CREATE c2 创建表创建表c2.dbfc2.dbf CLEAR CLEAR 清屏幕清屏幕 DISPLAY DATABASE DISPLAY DATABASE 显示当前数据库信息显示当前数据库信息 REMOVE TABLE c2 REMOVE TABLE c2 挪动数据库表挪动数据库表c2.dbfc2.dbf CLEAR CLEAR 清屏幕清屏幕 DISPLAY DATABASE DISPLAY DATABASE 显示当前数据库信息显示当前数据库信息 ADD
16、 TABLE c2 ADD TABLE c2 将表将表c2c2添加到当前库中添加到当前库中 DELETE DATABASE t1 DELETE DATABASE t1 删除数据库删除数据库t1t14.4.显示表的构造显示表的构造命令格式命令格式: :LIST STRUCTURE LIST STRUCTURE TO PRINTERTO PRINTER| |TO TO FILE FILE 文件名文件名阐明阐明: :(1)(1)有有TO PRINTERTO PRINTER选项时选项时, ,将屏幕显示的将屏幕显示的信息输出到打印机信息输出到打印机(2)(2)有有TO FILE TO FILE 文件名选
17、项时文件名选项时, ,将屏将屏幕显示的信息输出到指定的文件幕显示的信息输出到指定的文件5.5.修正表的构造修正表的构造 命令格式:命令格式: ALT TABLE ALT TABLE 表名表名 命令功能命令功能: : 修正表的构造修正表的构造7.7.输入记录输入记录 表的构造建立,没有数据,是空表表的构造建立,没有数据,是空表 命令格式:命令格式: APPEND APPEND BLANKBLANK 命令功能命令功能: : 从表的末尾追加记录从表的末尾追加记录 BLANKBLANK,末尾追加一空记录,不出现,末尾追加一空记录,不出现APPENDAPPEND输入记录窗口输入记录窗口7.7.翻开表翻开
18、表 命令格式:命令格式: USE USE 表名表名 命令功能命令功能: : 翻开一个和多个曾经存在的表翻开一个和多个曾经存在的表 阐明阐明: : 表名用于指定需求翻开表的称表名用于指定需求翻开表的称号号8.8.封锁表封锁表 命令格式:命令格式: USE USE CLOSE TABLES CLOSE TABLES ALLALL 命令功能命令功能: : USE USE 封锁已翻开的表封锁已翻开的表 CLOSE TABLES CLOSE TABLES ALLALL可以同时封锁多个可以同时封锁多个表。表。 阐明阐明: : 及时封锁,从内存上卸下表,以防止操作及时封锁,从内存上卸下表,以防止操作不当不当
19、* * * *记录指针定位记录指针定位 用用RECNO()RECNO()函数函数, ,可测试当前记录指针可测试当前记录指针 绝对指针定位绝对指针定位 命令格式:命令格式: GO GO TOTO TOP TOP GO GO TOTO BOTTOM BOTTOM GO GO TOTO RECORD N RECORD N GO GO TOTO数值表达式数值表达式 GO GO TOTO N N 命令功能:命令功能: 使记录指针指向表中的指定记录使记录指针指向表中的指定记录 阐明阐明 GO TOP GO TOP 定位第一个逻辑记录定位第一个逻辑记录 GO BOTTOM GO BOTTOM 定位最后一个逻
20、辑记录定位最后一个逻辑记录 GO RECORD N GO RECORD N 指针定位到表的指针定位到表的N N号记录号记录 GOGO数值表达式定到表达式值取整后数值表达式定到表达式值取整后的记录的记录 GO N GO N 指针定位到指针定位到N N号记录号记录 中选用参数中选用参数N N时,时,GOGO、TOTO均可省略不写均可省略不写相对指针转移相对指针转移 命令格式:命令格式: SKIP SKIP + +- -数值表达式数值表达式 命令功能:命令功能: 相对当前位置按表达式值挪动假设干个相对当前位置按表达式值挪动假设干个记录记录 值为正时,指针向后移值为正时,指针向后移 为负值时,指针向前
21、移为负值时,指针向前移 缺省选择项时指针向后移一个记录缺省选择项时指针向后移一个记录 阐明:阐明: GOGO绝对定位,定位到所指的记录上绝对定位,定位到所指的记录上 SKIPSKIP是相对定位命令,以当前记录为中是相对定位命令,以当前记录为中心,按给定的表达式值相对地挪动假设心,按给定的表达式值相对地挪动假设干记录干记录记录的显示记录的显示 两种格式两种格式: : LIST LIST 范围范围FIELDSFIELDS字段名字段名表表FORFOR条件条件TO PRINTER TO PRINTER OFFOFFTO FILETO FILE文件名文件名NOCONSOLENOCONSOLENOOPTI
22、MIZENOOPTIMIZE DISPLAY DISPLAY 范围范围FIELDSFIELDS字段字段名表名表FORFOR条件条件TO P TO P RINTERRINTEROFFOFFTO FILETO FILE文件名文件名NOCONSOLENOCONSOLENOOPTIMIZENOOPTIMIZE阐明:阐明: LIST=DISPLAY ALLLIST=DISPLAY ALL显示的全部记录显示的全部记录 OFFOFF时,不显示记录号时,不显示记录号 有有FORFOR条件显示出满足条件表达式的记录条件显示出满足条件表达式的记录 FIELDSFIELDS字段名表,显示指定字段字段名表,显示指定字
23、段 有范围,显示指定范围有范围,显示指定范围 TO PRINTERTO PRINTER,显示的结果送到打印机输出,显示的结果送到打印机输出 TO FILETO FILE文件名,结果输出到文件文件名,结果输出到文件 NOCONSOLENOCONSOLE,不将显示结果送到主窗口和,不将显示结果送到主窗口和TO TO PRINTERPRINTERTO FILE TO FILE 文件名一同运用文件名一同运用 NOOPTIMIZENOOPTIMIZE短语时,不运用短语时,不运用RUSHMORERUSHMORE优化技术优化技术差别有两点:差别有两点: LISTLIST缺省范围是显示全体记录缺省范围是显示全
24、体记录 DISPLAYDISPLAY缺省当前记录缺省当前记录 LISTLIST具有延续显示特点具有延续显示特点 DISPLAYDISPLAY具有分页显示,满一页就停顿,具有分页显示,满一页就停顿,并提示按任一键继续显示下页内容并提示按任一键继续显示下页内容例例7.17.1 将将ZGDAZGDA表中职称是讲师的、年龄在表中职称是讲师的、年龄在4545岁以下的岁以下的记录显示出来,并且只列出记录显示出来,并且只列出 姓名、年龄、职姓名、年龄、职称三个字段称三个字段 USE ZGDA USE ZGDA LIST FIELDS LIST FIELDS 姓名,年龄,职称姓名,年龄,职称 FOR FOR
25、职称职称“讲师讲师ANDAND年龄年龄4545【例【例7.27.2】将将ZGDAZGDA表的后表的后4 4个记录显示出来个记录显示出来, ,并且将第并且将第1 1和第和第5 5个记录分别显示出来个记录分别显示出来【例【例7.37.3】将将ZGDAZGDA表中表中19951995年年1 1月月1 1日以后参与任务的日以后参与任务的记录显示出来记录显示出来【例【例7.47.4】将将ZGDAZGDA表的后表的后4 4个记录中性别是女的记录显个记录中性别是女的记录显示出来示出来7.3 7.3 表的修正和维护表的修正和维护 1.EDIT 1.EDIT 和和 CHANGE CHANGE命令命令格式分别是格
26、式分别是: : EDIT EDIT 范围范围FIELDSFIELDS字段名表字段名表 FORFOR条件条件CHANGECHANGE范围范围FIELDSFIELDS字段名表字段名表 FOR FOR 条件条件 命令功能命令功能: : 进入全屏幕编辑方式,对当前翻开进入全屏幕编辑方式,对当前翻开的表的记录进展修正的表的记录进展修正阐明阐明: : 缺省一切的选择项,从当前记录开场进缺省一切的选择项,从当前记录开场进展修正展修正 FIELDSFIELDS字段名表,对列出的字段进字段名表,对列出的字段进展修展修 改改 范围和范围和FORFOR条件,范围内满足条件的条件,范围内满足条件的记录进展修正记录进展
27、修正 缺省了范围是指全部记录缺省了范围是指全部记录2.BROWSE2.BROWSE命令命令 命令格式:命令格式: BROWSE BROWSE FIELDS FIELDS 字段名表字段名表 命令功能:命令功能: 该命令以窗口方式显示当前表的内容,该命令以窗口方式显示当前表的内容,并可以对窗口内的数据按需求进展修正并可以对窗口内的数据按需求进展修正 运用运用EDITEDIT命令和命令和CHANGECHANGE命令时命令时 一行只显示一个字段一行只显示一个字段 每屏幕只能显示一个记录每屏幕只能显示一个记录3.REPLACE3.REPLACE命令命令* * * * 命令格式:命令格式: REPLACE
28、 REPLACE范围字段范围字段1 1WITHWITH表达式表达式1 1ADDITIVEADDITIVE,字段字段2 2WITHWITH表达式表达式2 2ADDITIVEADDITIVE FORFOR条件条件 命令功能:命令功能: 成批地、快速地修正满足给定条件成批地、快速地修正满足给定条件的一批记录的一批记录 修正的方法是修正的方法是 用用WITHWITH后面表达式的后面表达式的值交换值交换WITHWITH前面的字段内容前面的字段内容 阐明:阐明:(1) (1) 系统不进入全屏幕编辑方式系统不进入全屏幕编辑方式(2) (2) 范围和范围和FORFOR条件,修正范围内满足条件的一条件,修正范围
29、内满足条件的一切记录,缺省范围,当前记录切记录,缺省范围,当前记录 (3)REPLACE(3)REPLACE命令可以对备注字段的数据进展交换命令可以对备注字段的数据进展交换可用关键字可用关键字ADDITIVEADDITIVE,追加到备注的文本内容,追加到备注的文本内容的尾部的尾部否那么表达式的内容覆盖备注字段中的原有内容否那么表达式的内容覆盖备注字段中的原有内容(4)(4)字段名和表达式的数据类型必需一样字段名和表达式的数据类型必需一样数值字段,表达式的值大于字段宽度时,四舍五入数值字段,表达式的值大于字段宽度时,四舍五入运算,或采取科学计数法运算,或采取科学计数法【例【例7.57.5】 在表
30、在表DA.DBFDA.DBF中,对工资小于中,对工资小于800800元的职工各元的职工各添加添加1010元元 USE DAUSE DA REPLACE ALL REPLACE ALL 工资工资 WITH WITH 工资工资+10 +10 FOR FOR 工资工资800800 USEUSE记录的插入与删除记录的插入与删除 1.1.记录的插入记录的插入APPEND APPEND 命令是从表末尾添加新记录命令是从表末尾添加新记录命令格式:命令格式: INSERT INSERT BLANKBLANK BEFOREBEFORE命令功能:命令功能: 在当前表中的当前记录之前或之后插入在当前表中的当前记录之
31、前或之后插入记录记录阐明:阐明:阐明:阐明:(1)(1)没有选择项,是在当前记录之后插入一个记录没有选择项,是在当前记录之后插入一个记录(2)(2)假设有假设有BEFOREBEFORE选择项,是在当前记录之前插选择项,是在当前记录之前插入一个记录入一个记录(3)(3)假设有假设有BLANKBLANK选择项,是在当前记录之后插选择项,是在当前记录之后插入一个空白记录入一个空白记录2.2.记录的删除记录的删除 分两步进展:分两步进展: 对欲删除的记录打删除标志对欲删除的记录打删除标志 “* *,称为逻,称为逻辑删除辑删除 必要时,可恢复,即把必要时,可恢复,即把“* *去掉去掉 把带有删除标志的记
32、录真正删除,称为永把带有删除标志的记录真正删除,称为永久性删除记录或称物理删除记录久性删除记录或称物理删除记录(1)(1)逻辑删除记录命令逻辑删除记录命令 命令格式:命令格式: DELETEDELETE范围范围FORFOR条件条件 命令功能:命令功能: 指定范围内满足条件的那些记录加上删指定范围内满足条件的那些记录加上删除标志除标志“* * 阐明:阐明: 假设省略两个选择项,那么给当前记录假设省略两个选择项,那么给当前记录打删除标志打删除标志“* * 当用命令当用命令 SET DELETE ON SET DELETE ON 在显示或有在显示或有关操作时,作了删除标志的记录就不起关操作时,作了删
33、除标志的记录就不起作用,好像真正删除这些记录一样。作用,好像真正删除这些记录一样。【例【例7.67.6】 将表将表DADADBFDBF的的4 4号记录打上删除标志号记录打上删除标志 USE DAUSE DA DELETE RECORD 4DELETE RECORD 4 LISTLIST(2)(2)记录恢复删除命令记录恢复删除命令 命令格式命令格式: : RECALL RECALL 范围范围FORFOR条件条件 命令功能:命令功能: 将规定范围内的、符合条件的、已作了将规定范围内的、符合条件的、已作了删除标志的记录恢复。即把删除删除标志的记录恢复。即把删除 标志标志“* *去掉。去掉。(3)(3
34、)永久性删除记录命令永久性删除记录命令 命令格式:命令格式: PACKPACK 命令功能:命令功能: 将带有删除标志的记录从当前表中删除将带有删除标志的记录从当前表中删除 并重新调整表的记录号并重新调整表的记录号 阐明:阐明: 执行执行PACKPACK命令后,删除的记录在表中不命令后,删除的记录在表中不再存在,并且不能被恢复,称永久性删再存在,并且不能被恢复,称永久性删除记录除记录 (4)(4)删除表的全部记录命令删除表的全部记录命令 命令格式:命令格式:ZAPZAP 命令功能:命令功能: 将已翻开的表中的全部记录一次性删除将已翻开的表中的全部记录一次性删除 阐明:阐明: (1)(1)执行此命
35、令,只是删除全部记录,而表执行此命令,只是删除全部记录,而表的构造依然保管。的构造依然保管。 (2)(2)该命令等效于执行了该命令等效于执行了DELETE ALLDELETE ALL命令后命令后再执行再执行PACKPACK命令。命令。表的排序表的排序 按一定的条件在已有的表之外产生一个新的有序按一定的条件在已有的表之外产生一个新的有序表表 ,从而实现数据的重新组织。,从而实现数据的重新组织。 命令格式:命令格式: SORT TO SORT TO 文件名文件名 ON ON字段名字段名1 1A AC CD D,字段名,字段名2 2A AC CD DASCENDING|DESCENDINGASCEN
36、DING|DESCENDING范围范围FORFOR条件条件FIELDSFIELDS字段名表字段名表 命令功能:对当前表中指定范围内满足条件的记命令功能:对当前表中指定范围内满足条件的记录,根据关键字段按字符顺序录,根据关键字段按字符顺序 、数值大小或时、数值大小或时间顺序进展重新陈列,生成一个新的表。间顺序进展重新陈列,生成一个新的表。阐明:阐明: 新生成的表,扩展名为新生成的表,扩展名为.DBF.DBF 不选择范围和条件时,对全部记录进展排序不选择范围和条件时,对全部记录进展排序 不指定不指定FIELDSFIELDS,新表构造全部字段组成,新表构造全部字段组成 多重排序,即先对字段名多重排序
37、,即先对字段名1 1 排序,对于记录一样的记排序,对于记录一样的记录,再按字段名录,再按字段名2 2排序,依此类推排序,依此类推 A A和和D D分别表示升序和降序,升序符号可以省略不写分别表示升序和降序,升序符号可以省略不写 C C使排序时不分大小写字母使排序时不分大小写字母 C C可以和可以和A A或或D D连用,两种选择可以只用一条斜线,连用,两种选择可以只用一条斜线,如如ACAC或或 DCDC ASCENDINGASCENDING和和DESCENDINGDESCENDING仅对那些没有指定仅对那些没有指定A A和和D D的关的关键字段起作用,关键字段默许按升序键字段起作用,关键字段默许
38、按升序 A A排序排序【例【例7.77.7】 将表将表A1.DBFA1.DBF按工资排序,排序后的表名按工资排序,排序后的表名为为GZ.DBFGZ.DBF USE A1USE A1 SORT ON SORT ON 工资工资 TO GZ TO GZ USE GZUSE GZ LISTLIST7.4 7.4 索引文件索引文件 表排序的方法:表排序的方法: 分类方法分类方法 索引索引 两种索引文件类型两种索引文件类型 一种为单入口索引文件一种为单入口索引文件 其扩展名为其扩展名为.IDX.IDX索引文件索引文件 复合索引文件复合索引文件 其扩展名为其扩展名为.CDX.CDX索引文件索引文件 索引就像
39、一本书的目录索引可使读者快索引就像一本书的目录索引可使读者快速找到所需的内容一样速找到所需的内容一样(1)(1)单入口索引文件单入口索引文件 是与是与FoxBASEFoxBASE表索引文件相兼容的索引文件表索引文件相兼容的索引文件 一个表可以有多个这样的索引文件一个表可以有多个这样的索引文件 其扩展名为其扩展名为.IDX.IDX索引文件索引文件(2)(2)复合索引文件复合索引文件包含许多索引包含许多索引每个索引都有一个每个索引都有一个TAGTAG标志标志复合索引文件就好似是许多单个复合索引文件就好似是许多单个索引的集合索引的集合1)1)构造复合索引文件:构造复合索引文件:这样的索引文件与相关的
40、表同名这样的索引文件与相关的表同名但扩展名为但扩展名为.CDX.CDX当表被翻开时,索引文件也自动当表被翻开时,索引文件也自动被翻开被翻开并能自动及时更新并能自动及时更新2)2)独立型复合索引文件:独立型复合索引文件:这样的索引文件不与相关的表同这样的索引文件不与相关的表同名名且不会随相关表的翻开而自动翻且不会随相关表的翻开而自动翻开开1.1.建立索引文件建立索引文件 命令格式:命令格式: INDEX ONINDEX ON索引表达式索引表达式TOTOIDXIDX索引文件名索引文件名|TAG|TAG标志名标志名OFOFCDXCDX索引文件名索引文件名 FORFOR条件条件COMPACTCOMPA
41、CTASCENDING|DESCENDINGASCENDING|DESCENDINGUNIQUEUNIQUEADDITIVEADDITIVE 命令的功能命令的功能: : 对满足指定条件的记录按索引表达式进展索引,对满足指定条件的记录按索引表达式进展索引, 构成构成.IDX.IDX索引文件或索引文件或.CDX.CDX索引文件。索引文件。主要参数阐明:主要参数阐明: 如有关键字如有关键字TAG,TAG,表示建立复合索引表示建立复合索引 TAGTAG关键字标志名为复合索引一个索引标志关键字标志名为复合索引一个索引标志 选择选择OFOFCDXCDX索引文件名时索引文件名时, ,可建立独立型复合索引可建
42、立独立型复合索引文件文件 缺省时可建立与表同名的构造化复合索引文件缺省时可建立与表同名的构造化复合索引文件 有有FORFOR条件时,按满足条件的记录进展索引条件时,按满足条件的记录进展索引 ASCENDINGASCENDING任选项任选项, ,排序方式是按升序排序方式是按升序 DESCENDINGDESCENDING任选项任选项, ,排排 序方式是按降序序方式是按降序 默许时为升序默许时为升序主要参数阐明:主要参数阐明: 索引表达式中的字段名可以是数值型、字符型或索引表达式中的字段名可以是数值型、字符型或日期型日期型 表达式由多个字段组成时,必需转换成一样的数表达式由多个字段组成时,必需转换成
43、一样的数据类型据类型 转换可运用转换可运用VAL()VAL()、STR()STR()、CTOD()CTOD()、DTOC()DTOC()函数。函数。假设索引表达式的字段类型一致时,必需用假设索引表达式的字段类型一致时,必需用“+ +衔接。衔接。 选择选择COMPACTCOMPACT项时项时, ,在建立单入口索引时运用,在建立单入口索引时运用,表示可生成一个紧缩的单独索引文件表示可生成一个紧缩的单独索引文件 复合索引文件自动采用紧缩方式。复合索引文件自动采用紧缩方式。 UNIQUEUNIQUE项时,多记录有一样的关键字表达式值,项时,多记录有一样的关键字表达式值,第一个记录有效,包含在索引文件中
44、第一个记录有效,包含在索引文件中 假设未指定假设未指定UNIQUEUNIQUE,那么一切记录均包含在索引,那么一切记录均包含在索引文件中文件中 2.2.翻开和封锁索引文件翻开和封锁索引文件 翻开索引文件的两种命令翻开索引文件的两种命令 1)1)用用USEUSE翻开表和索引文件翻开表和索引文件 2)2)用用SET INDEXSET INDEX翻开索引文件翻开索引文件1)1)用用USEUSE翻开表和索引文件翻开表和索引文件 命令格式:命令格式: USEUSE表文件名表文件名INDEXINDEX索引文件名表索引文件名表|?|?ORDERORDER数值表达式数值表达式| |IDXIDX文件文件名名 命
45、令功能:命令功能: 本命令将索引文件连同表主文件一同翻开本命令将索引文件连同表主文件一同翻开 执行此命令后,封锁当前任务执行此命令后,封锁当前任务 区前运用的表区前运用的表及索引文件及索引文件2)2)用用SET INDEXSET INDEX翻开索引文件翻开索引文件 命令格式命令格式 SET INDEX TOSET INDEX TO索引文件名表索引文件名表|?|?ADDITIVEADDITIVE 命令功能:命令功能: 翻开表主文件后,用此命令翻开已建立的索引翻开表主文件后,用此命令翻开已建立的索引文件文件 阐明:阐明: 凡与表一同翻开的多个索引文件,用凡与表一同翻开的多个索引文件,用APPEND
46、APPEND、BROWSEBROWSE、EDITEDIT及及REP LACEREP LACE命令修正时,均会自命令修正时,均会自动地修正一切的索引文件。动地修正一切的索引文件。 构造化复合索引文件随着表的翻开而翻开构造化复合索引文件随着表的翻开而翻开, ,随随着表的封锁而封锁。着表的封锁而封锁。 对于单入口索引对于单入口索引 文件和独立型索引文件可以文件和独立型索引文件可以用上述命令,该命令可以一次翻开一个或多个用上述命令,该命令可以一次翻开一个或多个索引文件索引文件3)3)确定主控索引确定主控索引 命令格式命令格式: : SET ORDER TOSET ORDER TO数值表达式数值表达式|
47、 |IDXIDX文件名文件名| |TAGTAG标志名标志名OFOFCDXCDX索引文件索引文件名名ASCENDING|DESCENDINGASCENDING|DESCENDING 一个表可以同时翻开多个索引文件一个表可以同时翻开多个索引文件 但是只需一个索引起作用,称之为主索引但是只需一个索引起作用,称之为主索引4)4)封锁索引文件封锁索引文件 命令格式:命令格式: 格式格式1 USE1 USE 格式格式2 SET INDEX TO2 SET INDEX TO 格式格式3 CLOSE INDEX3 CLOSE INDEX 阐明:阐明: 格式格式1)1)可以封锁表及其索引文件可以封锁表及其索引文
48、件 格式格式2)2)与格式与格式3)3)功能一样功能一样, ,可以封锁可以封锁.IDX.IDX文件与文件与独立型复合索引文件独立型复合索引文件, ,但不能封锁构造化复合索但不能封锁构造化复合索引文件引文件【例【例7.87.8】 有一个表有一个表A1.DBFA1.DBF,按工资建立单入口的,按工资建立单入口的索引文件索引文件(.IDX(.IDX文件文件) ), 其文件名为其文件名为GZ.IDXGZ.IDX。 USE A1USE A1 INDEX ON INDEX ON 工资工资 TO GZ TO GZ 6 records indexed 6 records indexed SET INDEX T
49、O GZSET INDEX TO GZ LISTLIST3.3.添加记录后的重新索引添加记录后的重新索引 命令格式:命令格式:REINDEXREINDEX 命令功能:命令功能: 重新建立已索引过的索引文件。重新建立已索引过的索引文件。 阐明:阐明: 已有索引文件,在输入记录前,并没有已有索引文件,在输入记录前,并没有翻开,需求再一次建立索引文件翻开,需求再一次建立索引文件 运用该命令时,必需先翻开索引文件运用该命令时,必需先翻开索引文件数据检索数据检索 数据检索的命令:数据检索的命令:顺序检索顺序检索LOCATELOCATECONTINUECONTINUE索引检索索引检索FINDFINDSEE
50、KSEEK1.1.查找命令查找命令FINDFIND 命令格式:命令格式: FIND FIND 字符串数字字符串数字 命令功能:命令功能: 从表的索引文件中查找指定字符串或与数字相匹从表的索引文件中查找指定字符串或与数字相匹配的记录配的记录 找到:将记录指针指向找到:将记录指针指向 函数函数FOUND()FOUND()前往逻辑真值前往逻辑真值 未找到:指向文件尾,未找到:指向文件尾,eof()eof()为真为真 此时的记录号为表的最大记录号此时的记录号为表的最大记录号+1+1 函数函数FOUND()FOUND()前往逻辑假值前往逻辑假值阐明:阐明: 检索值可以是字符串和数字,但不能是表达检索值可
51、以是字符串和数字,但不能是表达式式 假设运用字符型内存变量检索时,必需运用假设运用字符型内存变量检索时,必需运用宏代换宏代换& &函数,以内存变量的内容检索函数,以内存变量的内容检索 字符串不用定界符字符串不用定界符 假设字符串以空格假设字符串以空格 开场,必需用定界符开场,必需用定界符【例【例7.97.9】查找字符型数据】查找字符型数据USE A1 INDEX XMUSE A1 INDEX XMFIND FIND 孟彬彬孟彬彬DISPLAYDISPLAYFIND FIND 孙孙DISPLAYDISPLAY2.2.检索命令检索命令 SEEK SEEK 命令格式:命令格式: SEEKSEEK表达
52、式表达式 命令功能:命令功能: 在主控索引文件中将记录指针定位在索在主控索引文件中将记录指针定位在索引关键字内容与命令中指定的表达式相引关键字内容与命令中指定的表达式相匹配的第一个记录匹配的第一个记录 SEEKSEEK能实现快速查找信息能实现快速查找信息SEEKSEEK阐明:阐明: 当表达式为字符型数据时,必需用单引当表达式为字符型数据时,必需用单引号、双引号或方括号括起来号、双引号或方括号括起来 假设是内存变量或假设是内存变量或 数值型表达式时,不数值型表达式时,不用定界符用定界符 FINDFIND不能查找日期型数据,而不能查找日期型数据,而SEEKSEEK可以可以 直接查找日期索引关键字的
53、内容。直接查找日期索引关键字的内容。 后接表达式:后接表达式: 用内存变量可直接用用内存变量可直接用SEEKSEEK检索,不用加检索,不用加宏交换函数宏交换函数【例【例7.107.10】 查找字符型数据查找字符型数据 利用前面以姓名为索引关键字的索引文利用前面以姓名为索引关键字的索引文件件 USE A1USE A1 SET INDEX TO XM SET INDEX TO XM SEEK SEEK 张张 燕燕 DISPLAYDISPLAY顺序查找命令顺序查找命令(LOCATE(LOCATE与与CONTINUE)CONTINUE) 直接查找命令,不用索引直接查找命令,不用索引 命令格式:命令格式
54、: LOCATE LOCATE 范围范围 FOR FOR条件条件 命令格式:命令格式: CONTINUE CONTINUE 命令功能:命令功能: 对当前表中的记录进展顺序查找,查找指定对当前表中的记录进展顺序查找,查找指定范围内满足条件的第一个记录范围内满足条件的第一个记录 假设有满足条件的记录,将记录指针定位在假设有满足条件的记录,将记录指针定位在满足条件的第一个记录,并显示出当前记录满足条件的第一个记录,并显示出当前记录的记录号的记录号Record=n)Record=n)阐明:阐明: 用用LOCATELOCATE命令查询时,不用对表进展排序或建命令查询时,不用对表进展排序或建立索引文件立索
55、引文件 假设在表中没有查找到满足条件的记录那么屏假设在表中没有查找到满足条件的记录那么屏幕显示出幕显示出“END OF LOCATE SCOPEEND OF LOCATE SCOPE的文件终了的文件终了标志信息标志信息 假设假设LOCATE LOCATE 与与 CONTINUE CONTINUE结合运用,可以实现结合运用,可以实现查询每一个满足条件的记录查询每一个满足条件的记录 不可再用不可再用LOCATE FORLOCATE FOR,否那么还是找到第一个,否那么还是找到第一个记录。记录。【例【例7.117.11】 查找工资查找工资560.00560.00元的记录元的记录 USE A1USE
56、A1 LOCATE ALL FOR LOCATE ALL FOR 工资工资560.00560.00 DISPLAYDISPLAY CONTINUECONTINUE DISPLAYDISPLAY CONTINUECONTINUE7.5 7.5 统计命令统计命令 求和命令求和命令(SUM) 求平均值命令求平均值命令(AVERAGE) 计数命令计数命令(COUNT) 求统计量命令求统计量命令(CALCULATE) 分类汇总命令分类汇总命令 求和命令求和命令(SUM) (SUM) 命令格式命令格式: : SUM SUM范围字段名表范围字段名表 TOTO内存变量表内存变量表| |数组名数组名 FORFO
57、R条件条件 命令功能:命令功能: 对当前表指定的数值型字段进展列向求和对当前表指定的数值型字段进展列向求和【例【例7.127.12】 以以B1.DBFB1.DBF表为例,进展下面的统计操作:表为例,进展下面的统计操作: (1)(1)将一切数值型字段求和将一切数值型字段求和 (2)(2)将性别是女的记录求和将性别是女的记录求和 USE B1USE B1 LISTLIST SUMSUM 5 records summed 5 records summed SUM FOR SUM FOR 性别性别 女女 3 records summed 3 records summed求平均值命令求平均值命令(AVE
58、RAGE) (AVERAGE) 命令格式:命令格式: AVERAGEAVERAGE范围字段名表范围字段名表 TOTO内存变量表内存变量表| |数组名数组名 FORFOR条件条件 命令功能:命令功能: 对当前表指定的数值型字段列向求算术平对当前表指定的数值型字段列向求算术平均值均值【例【例7.137.13】 对对B1.DBFB1.DBF表指定数值型字段求算术平均值,表指定数值型字段求算术平均值,并把结果送到对应的内存变量中并把结果送到对应的内存变量中 USE B1 USE B1 AVERAGE AVERAGE 根本工资,年龄根本工资,年龄 TO C1 TO C1,C2C2 5 records a
59、verage 5 records average ? C1 C1,C2C2 2348.00 27 2348.00 27计数命令计数命令(COUNT)(COUNT) 命令格式:命令格式: COUNTCOUNT范围范围FORFOR条件条件 TOTO内存变量内存变量| |数组名数组名 命令功能:命令功能: 统计当前表中记录的个数统计当前表中记录的个数 * * *受受set deleted on|offset deleted on|off影响影响 Set deleted onSet deleted on那么不数有删除标志的那么不数有删除标志的记录记录 RECCOUNTRECCOUNT不受其影响不受其影
60、响例:例:Use da &设该表中记录个数为设该表中记录个数为8,一个,一个逻辑删除逻辑删除Go 3DeleSet deleted onCount 7? Reccount() 8Set deleted offCount 8? Reccount 8 【例【例7.147.14】 将将B1.DBFB1.DBF表中对性别是男的记录进展统表中对性别是男的记录进展统计,并且存储到内存变量中计,并且存储到内存变量中 USE B1USE B1 COUNT FOR COUNT FOR 性别性别 男男 TO XB TO XB 2 records 2 records ?XBXB 2 2求统计量命令求统计量命令(CA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-湖南-湖南护理员三级(高级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-湖南-湖南家禽饲养员四级(中级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-湖北-湖北房管员一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北土建施工人员一级(高级技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-湖北-湖北农机驾驶维修工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-海南-海南中式面点师二级(技师)历年参考题库含答案解析
- 2025年事业单位工勤技能-浙江-浙江热力运行工四级(中级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-河南-河南水工监测工四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-江西-江西房管员一级(高级技师)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西计算机文字录入处理员四级(中级工)历年参考题库含答案解析
- 火灾应急预案组织架构图
- 山东省济宁市第十五中学2023-2024学年(五四学制)六年级上学期第一次月考语文试题
- 北京马拉松赛事运作及战略定位研究
- 高中思想政治-人教版新教材必修1第四课第一框:中国特色社会主义进入新时代教学设计学情分析教材分析课后反思
- DB6105T 180-2022 大豆种子田间检验技术规程
- 惠州卫生职业技术学院辅导员考试题库
- 试用期转正审批表及考核表实用文档
- 2023年爱粮节粮知识竞赛试题
- 印尼劳动法中文版
- 内科大查房课件综合医院抑郁诊疗-包头
- GB/T 9573-2013橡胶和塑料软管及软管组合件软管尺寸和软管组合件长度测量方法
评论
0/150
提交评论