| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2125 人关注过本帖
标题:关于locate命令使用方法求大佬讲解
只看楼主 加入收藏
青灯古佛
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2019-10-14
结帖率:50%
收藏
 问题点数:0 回复次数:2 
关于locate命令使用方法求大佬讲解
去问一下各位前辈locate命令是不是只能查找已创建索引的记录
搜索更多相关主题的帖子: 命令 locate 方法 讲解 记录 
2020-07-27 08:40
zhken
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:11
帖 子:285
专家分:620
注 册:2012-9-21
收藏
得分:0 

表不必存在索引。

参考一下帮助就有:


LOCATE 命令
请参阅 示例
 全部折叠 全部展开
按顺序搜索表,从中找到与指定的逻辑表达式相匹配的第一条记录。

 
LOCATE [FOR lExpression1]   [Scope]   [WHILE lExpression2]   [NOOPTIMIZE]
 

参数
FOR lExpression1
按顺序搜索当前表,从中找到与逻辑表达式 lExpression1 相匹配的第一条记录。如果 lExpression1 是一个可优化表达式,则 Rushmore 查询优化技术将优化由 LOCATE FOR 创建的查询。为了获得最佳性能,应在 FOR 子句中使用可优化表达式。更多的信息,请参见 SET OPTIMIZE 和 使用 Rushmore 优化数据访问速度。
Scope
指定要查找记录的范围。近查找在范围中的记录。Scope 子句有:ALL、NEXT nRecords、RECORD nRecordNumber、和 REST。包含 Scope 子句的命令仅对活动工作区中的表起作用。LOCATE 的默认范围是所有记录(ALL)。
WHILE lExpression2
指定一个条件,只要逻辑表达式 lExpression2 结果为真(.T.),就继续查找记录。
NOOPTIMIZE
禁止对 LOCATE 的 Rushmore 查询优化。更多的信息,请参见 SET OPTIMIZE 和 使用 Rushmore 优化数据访问速度。
说明

表不必存在索引。

如果使用不包含 FOR 表达式的 LOCATE 命令,则 Visual FoxPro 将记录指针定位在第一个逻辑记录上。这在使用了筛选或 DELETED 为 ON 时,比使用 GO TOP 更快。

如果 LOCATE 找到了匹配的记录,则可以用 RECNO( ) 返回匹配记录的编号。如果找到匹配记录,则 FOUND( ) 返回真(.T.),EOF( ) 返回假(.F.)。如果 SET TALK 为 ON,则显示匹配记录的编号。

LOCATE 找到匹配记录后,可以使用 CONTINUE 继续寻找表中的其它匹配的记录。在执行 CONTINUE 时,查找操作从满足条件记录的下一条记录开始继续执行。您可以重复使用 CONTINUE 命令,直至达到范围尾或表尾。

如果没有找到匹配记录,则 RECNO( ) 返回比表中记录数大 1 的值,FOUND( ) 返回假(.F.),EOF( ) 返回真(.T.)。

LOCATE 和 CONTINUE 作用于当前工作区。如果选择了另外的工作区,则当重新选择原来工作区时,可以继续原来的搜索过程。
2020-07-27 09:10
青灯古佛
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2019-10-14
收藏
得分:0 
回复 2楼 zhken
好的谢谢前辈

天道酬勤
2020-07-27 09:39
快速回复:关于locate命令使用方法求大佬讲解
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.024812 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved