考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
全国  |             |          |          |          |          |         
  当前位置:计算机等级 > 二级考试 > Visual FoxPro > VF辅导 > 文章内容
  

计算机等级考试二级VFP辅导讲义:VisualFoxPro数据库及其操作

中华IT学院   【 】  [ 2017年7月5日 ]

  11.查询定位

  记录号用于标识数据记录在表文件中的物理顺序。记录指针是一个指示器,它始终指向当前表中正在操作处理的那条记录,此记录被称为当前记录。如果要对某条记录进行处理,必须移动记录指针,

  使其指向该记录。在任意时刻指针只能指向唯一的一条记录。记录指针定位有绝对定位、相对定位和查询定位三种。在这里暂时只讲前二种,查询定位在讲到查询时再详细介绍。

  (1). 绝对定位

  【格式】[GO | GOTO] <[RECORD] <数值表达式1> [IN <数值表达式2> | IN <字符表达式>]

  【功能】将记录指针绝对定位到<数值表达式1>指定的记录上。<数值表达式1>:记录的物理记录号。IN <数值表达式2> | IN <字符表达式>:指定操作表所在的工作区;若缺省,则对当前工作区表操作。工作区的概念在后面再详细介绍。

  绝对定位与是否打开索引文件没有关系。

  (2).相对定位【格式1】SKIP [<数值表达式1>] [IN <数值表达式2> | <字符表达式>]

  【功能】记录指针从当前记录向前(或向后)移动若干个记录。

  【说明】

  <数值表达式1>:表示移动的记录个数。若数值表达式的值为负值,表示向前移动记录;否则,表示向后移动记录。如果缺省此项,则表示向后移动1 个记录。 如果记录指针已经移过文件的最后一个记 录,则RECNO() 函数返回的值等于文件中的记录总数加 1,EOF()函数返回逻辑真( .T. ) 值。【格式2 】GO|GOTO <|TOP |BOTTOM>

  【功能】将记录指针移动到表文件的首记录或尾记录 TOP:将记录指针移动到表文件的首记录。 BOTTOM:将记录指针动到表文件的最后一条记录。相对定位与是否打开索引文件有关。如果打开有索引,记录指针按索引文件中顺序移动。否则按表文件中物理顺序移动。

  【例1】绝对定位命令的用法。

  USE STUD

  GOTO 2

  GO 3

  【例2】相对定位的用法。 USE STUD

  SKIP 4 && 系统主窗口显示为5

  SKIP -3 && 系统主窗口显示为2

  SKIP 8 && 超出了记录总数6

  go top && 系统主窗口显示为1

  (3).用LOCATE 命令定位

  【格式1】LOCATE FOR <数值表达式>

  【功能】该命令执行后将指针定位在满足条件的第一条记录上,如果没有满足条件的记录则指针指向文件结束位置。

  【说明】CONTINUE 命令:LOCATE 找到第一条满足条件的记录后,可以用 CONTINUE 继续查找下一个满足条件的记录。 CONTINUE命令必须在LOCATE 命令之后使用,否则出错。在CONTINUE 命令中实际隐含了前一个LOCATE 命令中的条件。

  【例】在STUD.DBF 中查找学号前四位为0111 的同学记录。

  USE STUD

  LOCATE FOR 学号="0111"

  1.定位记录时,可以用——命令向前或向后移动若干条记录位置。

  A.SKIP

  B.GOTO

  C.GO

  D.LOCATE

  [解析] 本题考查的知识点是定位记录的命令。SKIP 命令的功能是确定了当前记录位置后,向前或向后移动若干条记录位置。GO 和GOTO 命令等价,用于直接定位。LOCATE 命令是按指定条件定位记录位置。

  [答案] A2.在当前表中查找班级为1 的记录,应输入命令——。

  A.LOCATE FOR 班级=“l”

  B.LOCATE FOR 班级=“1”CONTINUE

  C.LOCATE FOR 班级= “1” NEXT l

  D.UST FOR 班级=“1”

  [解析] 本题考查的知识点是定位命令的使用。

  LOCATE 命令的功能是按指定条件定位记录位置。该命令执行后将记录指针定位在满足条件的第一条记录上,如果没有满足条件的记录指针将指向文件结束位置。如果要使指针指向下一条满足LOCATE 条件的记录,则使用CONTINUE 命令,如果没有记录要满足条件,则指针指向文件结束位置。由于表中可能含有多个班级为1 的记录,因此需要指定CONTINUE 命令, 因此选项A 错误;选项C 和D 的格式错误。

  [答案] B

  3.已知当前表中有15 条记录,当前记录为第12 条记录,执行SKIP -2 命令后,当前记录变为第____条记录。

  A.2

  B.10

  C.12

  D.15

  [解析] 本题考查的知识点是SKIP 命令的使用。SKIP 命令的作用是确定当前位置后,向前或向后移动若干条记录。格式是SKIP[数字],“数字”可以是正整数或负整数,如果是正数,则向后移动;如果是负数,向前移动。本题中共有15 条记录,当前位于第12 条记录。SKIP -2 命令中,整数为负2,所以向前移动2 条记录,即第10 条记录。

  [答案] B

  4.假设目前已打开表及索引文件,要确保记录指针定位在记录号为1的记录上, 应使用—— 命令。

  A.GO TOP

  B.GO l

  C.LOCATE l

  D.SKIP l

  [解析]

  本题考查的知识点是查询定位命令的使用。在visual FoxPro 中,查询定位的命令有:GOTO/GO,SKIP,LOCATE。GOT0 和GO 命令等价,用未直接定位。TOP 是表头,当不使用索引时定位到记录号为1 的记录,使用索引时是索引项排在最前面的索引对应的记录。LOCSTE 命令是按条件定位记录位置。SKIP 命令的作用是从当前记录开始向前或向后移动记录指针。本题因为使用了索引,所以选项A 错误;选项B 中的GOl 可以直接定位在记录号为1 的记录上;选项C 和D 中需要一定的条件才能确保记录定位在记录音为1 的记录上。因此正确答案为B。

  [答案]B

  5.打开数据库文件后,当前记录指针指向100,要使指针指向记录号为20 的记录, 应使用命令—— 。

  A.LOCATE 20

  B.SKIP -80

  C.GO 20

  D.SKIP 80

  [解析] 本题考查的知识点是利用命令定位记录选项A 中的LOCATE 命令使用的格式不正确;打开了索引文件后,SKIP 命令使记录。指针按索引逻辑顺序移动,执行SMP—80 命令之后,记录音不一定是20,GO 命令按指定的物理记录号定位,但若用TOP 或BONOM 短语,则按索引的逻辑顺序定位。

  [答案] C

  12. 设置字段级规则打开表设计器,在“字段有效性”框的“规则”中设置。

  [例题] 在表设计器的——选项卡中,可以设置记录验证规则,有效性出错信息,还可以指定记录插入更新及删除的规则。

  [解析] 本题考查的知识点是表设计器的应用。表设计器中有三个选项卡,在“字段”选项卡中可以设置字段名、类型、宽度、显示格式等属性。

  “索引”选项卡用来设置有关索引的属性:“表”选项卡用来设置表名,查看表文件的属性,记录有效性规则,指定记录插入、更新及删除的规则。题目中的属性设置都是在“表”选项卡中进行。

  [答案] 表

分享到:
本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved