VFP的命令格式_第1页
VFP的命令格式_第2页
VFP的命令格式_第3页
VFP的命令格式_第4页
VFP的命令格式_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 VFP的命令格式 兴隆职教中心詹亚萍 命令结构 FoxPro的命令结构一般由命令动词、语句体和注释几部分构成。 常用子句 范围:表示记录的执行范围 ALL 表示全部记录; NEXT n 表示从当前记录开始的以下n条记录; RECORD n 表示第n号记录; REST 表示从当前记录到最后一条记录。 FIELDS 字段名表:用于指定操作的字段,多个字段时用逗号分隔。 FOR条件:对满足条件的记录进行操作。 WHILE 条件:当遇到第一个不满足条件的记录时,停止命令执行。1.REPLACE1.REPLACE命令命令* * * * 命令格式:命令格式: REPLACE REPLACE 范围范围 字

2、段字段1 1 WITH WITH 表达式表达式1 1ADDITIVEADDITIVE,字段字段2 2 WITH WITH 表达式表达式2 2ADDITIVEADDITIVE FOR FOR 条件条件 命令功能:命令功能:成批地、快速地修改满足给定条件的一批记录成批地、快速地修改满足给定条件的一批记录修改的方法是修改的方法是 用用WITHWITH后面表达式的值替换后面表达式的值替换WITHWITH前前面的字段内容面的字段内容范围和范围和FORFOR条件条件,修改范围内满足条件的所有,修改范围内满足条件的所有记录记录 缺省范围,当前记录缺省范围,当前记录 【例例1 1】 在表在表DA.DBFDA.

3、DBF中,对工资小于中,对工资小于800800元的职工各元的职工各增加增加1010元元 REPLACE ALL REPLACE ALL 工资工资 WITH WITH 工资工资+10 FOR +10 FOR 工资工资800502012年年将所有系部名称为将所有系部名称为“计算机系计算机系”的职工的年龄加的职工的年龄加1。(用。(用Visual FoxPro命令)命令)Replace all 年龄年龄 with 年龄年龄+1 for 系部名称系部名称=“计算机系计算机系”2011年年将将“学生学生”表中所有表中所有“班级号班级号”是是“201001”的学生的的学生的“入学成绩入学成绩”加加10分。

4、(用分。(用Visual FoxPro命令命令Replace all 入学成绩入学成绩 with 入学成绩入学成绩+10 for 班级号班级号=“201001”【2010年年】将部门为将部门为“开发部开发部”的职工工资增加的职工工资增加100Replace all 工资工资 with 工资工资+100 for 部门部门=“开发部开发部”2.2.记录的删除记录的删除 分两步进行:分两步进行:是对欲删除的记录打删除标记是对欲删除的记录打删除标记 “* *”,称,称为逻辑删除为逻辑删除 必要时,可恢复,即把必要时,可恢复,即把“* *”去掉去掉是把带有删除标记的记录真正删除,称为是把带有删除标记的记

5、录真正删除,称为永久性删除记录或称物理删除记录永久性删除记录或称物理删除记录(1)(1)逻辑删除记录命令逻辑删除记录命令 命令格式:命令格式:DELETE DELETE 范围范围 FORFOR条件条件 命令功能:命令功能:指定范围内满足条件的那些记录加上删除标记指定范围内满足条件的那些记录加上删除标记“* *” 说明:说明:若省略两个选择项,则给当前记录打删除标记若省略两个选择项,则给当前记录打删除标记“* *”当用命令当用命令 SET DELETE ON SET DELETE ON 在显示或有关操作时,在显示或有关操作时,作了删除标记的记录就不起作用,如同真正删除这作了删除标记的记录就不起作

6、用,如同真正删除这些记录一样些记录一样【例例2 2】 将表将表DADADBFDBF的的4 4号记录打上删除标记号记录打上删除标记DELETE RECORD 4DELETE RECORD 420102010年年 逻辑删除工龄超过逻辑删除工龄超过1010年(不包括年(不包括1010年)且工资低于年)且工资低于20002000(不包括(不包括20002000)的记录)的记录Delete all for Delete all for 工龄工龄10 and 10 and 工资工资20003535(2)(2)记录恢复删除命令记录恢复删除命令 命令格式命令格式: : RECALL RECALL 范围范围 F

7、ORFOR条件条件 命令功能:命令功能:将规定范围内的、符合条件的、已作了删将规定范围内的、符合条件的、已作了删除标记的记录恢复。即把删除除标记的记录恢复。即把删除 标记标记“* *”去去掉掉若省略两个选择项,则恢复当前记录若省略两个选择项,则恢复当前记录【例例3 3】 在成绩表中恢复删除平均分在在成绩表中恢复删除平均分在6060分以上分以上的记录:的记录: Recall all for Recall all for 平均分平均分6060 【20152015年年】 恢复恢复“order_list”order_list”表中被逻辑删除的记录中表中被逻辑删除的记录中“数量数量”大于等于大于等于10

8、001000的记录。(用的记录。(用Visual FoxProVisual FoxPro命令)命令) Recall all for Recall all for 数量数量=1000=1000(3)(3)永久性删除记录命令永久性删除记录命令 命令格式:命令格式: PACKPACK 命令功能:命令功能:将带有删除标记的记录从当前表中删除将带有删除标记的记录从当前表中删除并重新调整表的记录号并重新调整表的记录号 说明:说明:执行执行PACKPACK命令后,删除的记录在表中不再命令后,删除的记录在表中不再存在,并且不能被恢复,称永久性删除记录存在,并且不能被恢复,称永久性删除记录 (4)(4)删除表的

9、全部记录命令删除表的全部记录命令 命令格式:命令格式:ZAPZAP 命令功能:命令功能:将已打开的表中的全部记录一次性删除将已打开的表中的全部记录一次性删除 说明:说明:(1)(1)执行此命令,只是删除全部记录,而表的结构执行此命令,只是删除全部记录,而表的结构仍然保留仍然保留(2)(2)该命令等效于执行了该命令等效于执行了DELETE ALLDELETE ALL命令后再执命令后再执行行PACKPACK命令命令3 3、记录的定位、记录的定位记录结束标志记录开始标志第n条记录Go topgo bottomskip1、记录指针标志、记录指针标志记录号(输入顺序)记录的开始标志 BOF ( )记录指

10、针标志 ( 当前记录 ) RECNO ( )记录的结束标志 EOF ( )2、记录的定位方式、记录的定位方式绝对定位 go相对定位 skip条件定位例例1 1假设假设ZGDA表有表有848条记录,先后执行以下命令条记录,先后执行以下命令 bof() eof() recno()use booksskip -1go bott skipFF 1TF 1 FF 848FT 849例例2 2 Use books go 5skip +2skip -3locate for RECN()1574记录定位的实现记录定位的实现(1)命令方式命令方式 绝对定位:绝对定位:GO( GOTO ) GO( GOTO )

11、TOP/BOTTOM 相对定位:相对定位:SKIP(与索引有关)(与索引有关)skip=skip 1 快速移动:快速移动:SEEK 及及 FINDA A绝对记录指针定位绝对记录指针定位 用用RECNO()RECNO()函数函数, ,可测试当前记录指针可测试当前记录指针 绝对指针定位绝对指针定位命令格式:命令格式: GO TOPGO TOP GO BOTTOMGO BOTTOM GO RECORD NGO RECORD N GO GO 数值表达式数值表达式 GO NGO N 命令功能:命令功能: 使记录指针指向表中的指定记录使记录指针指向表中的指定记录 说明说明 GO TOP GO TOP 定位

12、第一个逻辑记录定位第一个逻辑记录 GO BOTTOM GO BOTTOM 定位最后一个逻辑记录定位最后一个逻辑记录 GO RECORD N GO RECORD N 指针定位到表的指针定位到表的N N号记录号记录 GOGO数值表达式数值表达式定到表达式值取整后的记录定到表达式值取整后的记录 GO N GO N 指针定位到指针定位到N N号记录号记录 当选用参数当选用参数N N时,时,GOGO可省略不写,指针可省略不写,指针定位到定位到N N号记录号记录B.B.相对指针转移相对指针转移 命令格式:命令格式:SKIP SKIP + +- -数值表达式数值表达式 命令功能:命令功能:相对当前位置按表达

13、式值移动若干个记录相对当前位置按表达式值移动若干个记录值为正时,指针向后移值为正时,指针向后移为负值时,指针向前移为负值时,指针向前移缺省选择项时指针向后移一个记录缺省选择项时指针向后移一个记录 说明:说明:GOGO绝对定位,都定位到所指的记录绝对定位,都定位到所指的记录SKIPSKIP是相对定位命令,是相对定位命令, 以当前记录为中心,按给定以当前记录为中心,按给定的表达式值相对地移动若干记录的表达式值相对地移动若干记录(2)条件定位格式:LOCATE 范围 FOR|WHILE CONTINUE功能:LOCATE命令将记录指针定位在满足条件的第一个目标记录。CONTINUE命令将记录指针指向

14、下一条满足条件的目标记录。说明:(1)若缺省范围子句,则默认ALL。(2)若没有满足条件的记录,则记录指针指向文件结束位置。【例422】在职工简况表中,查找女性职工信息。USE ZgjkLOCATE FOR 性别=“女”&指针定位到第1个目标记录DISP&显示第1个目标记录CONTINUE&指针定位到下一个目标记录DISP&显示第2个目标记录? RECNO() , EOF() 9 .T.二、记录的显示二、记录的显示 两种格式两种格式: :LIST LIST 范围范围FIELDSFIELDS字段名表字段名表FORFOR条件条件DISPLAY DISPLAY 范围范围FIELDSFIELDS字段名

15、表字段名表FORFOR条件条件说明:说明:LIST=DISPLAY ALLLIST=DISPLAY ALL显示的全部记录显示的全部记录有有FORFOR条件条件显示出满足条件表达式的记录显示出满足条件表达式的记录FIELDSFIELDS字段名表字段名表,显示指定字段,显示指定字段有有范围范围,显示指定范围,显示指定范围差别有两点:差别有两点: LISTLIST缺省范围是显示全体记录缺省范围是显示全体记录 DISPLAYDISPLAY缺省当前记录缺省当前记录 LISTLIST具有连续显示特点,具有连续显示特点,显示表中所有符合条显示表中所有符合条件记录的命令,显示信息时不会暂停,指针会件记录的命令

16、,显示信息时不会暂停,指针会到文件尾到文件尾 DISPLAYDISPLAY具有分页显示,满一页就停止,并提具有分页显示,满一页就停止,并提示按任一键继续显示下页内容示按任一键继续显示下页内容例例4 4 将将ZGDAZGDA表中职称是讲师的、年龄在表中职称是讲师的、年龄在4545岁以下的岁以下的记录显示出来,并且只列出记录显示出来,并且只列出 姓名、年龄、职姓名、年龄、职称三个字段称三个字段LIST FIELDS LIST FIELDS 姓名,年龄,职称姓名,年龄,职称 FOR FOR 职称职称“讲师讲师”ANDAND年龄年龄4545【练习练习1 1】将将ZGDAZGDA表的后表的后4 4个记录

17、显示出来。个记录显示出来。【练习练习2 2】将将ZGDAZGDA表的后表的后4 4个记录中性别是女的记录显个记录中性别是女的记录显示出来示出来4 4、 表的修改和维护表的修改和维护 1.EDIT1.EDIT和和CHANGECHANGE命令命令格式分别是格式分别是: : EDIT EDIT 范围范围 FIELDS FIELDS 字段名表字段名表 FOR FOR 条件条件CHANGE CHANGE 范围范围 FIELDS FIELDS 字段名表字段名表 FOR FOR 条件条件 命令功能命令功能: : 进入全屏幕编辑方式,对当前打进入全屏幕编辑方式,对当前打开的表的记录进行修改开的表的记录进行修改

18、说明说明: : 缺省所有的选择项,从当前记录开始进缺省所有的选择项,从当前记录开始进行修改行修改 FIELDSFIELDS字段名表字段名表,对列出的字段进,对列出的字段进行修行修 改改 范围和范围和FORFOR条件条件,范围内满足条件的,范围内满足条件的记录进行修改记录进行修改 缺省了缺省了范围范围是指全部记录是指全部记录2.BROWSE2.BROWSE命令命令 命令格式:命令格式: BROWSE BROWSE FIELDS FIELDS 字段名表字段名表 命令功能:命令功能: 该命令以窗口方式显示当前表的内容,并可以对窗口内的该命令以窗口方式显示当前表的内容,并可以对窗口内的数据按需要进行修改数据按需要进行修改 使用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论