Functions.IndexSeek 方法 | |
-- todo --
在不移动记录指针的情况下,在索引表中搜索第一个索引键与指定表达式匹配的记录。
命名空间:
XSharp.VFP
程序集:
XSharp.VFP (在 XSharp.VFP.dll 中) 版本:2.22 GA
语法 FUNCTION IndexSeek(
eExpression,
lMovePointer,
uArea,
uIndex
) AS LOGIC CLIPPER
[ClipperCallingConventionAttribute(new string[] { ... })]
public static bool IndexSeek(
__Usual eExpression = default,
__Usual lMovePointer = default,
__Usual uArea = default,
__Usual uIndex = default
)
查看代码参数
- eExpression (Optional)
- 类型:__Usual
指定要搜索的索引键表达式。
- lMovePointer (Optional)
- 类型:__Usual
指定是否将记录指针移动到匹配的记录。如果lMovePointer为真(.T.)且存在匹配记录,
则记录指针移动到匹配记录。如果lMovePointer为真(.T.)但不存在匹配记录,
则记录指针不移动。如果lMovePointer为假(.F.)或省略,即使存在匹配记录,记录指针也不移动。
- uArea (Optional)
- 类型:__Usual
指定要搜索索引键的工作区号。
或
指定要搜索的表别名。如果省略uArea,则搜索当前选定工作区中的表。
- uIndex (Optional)
- 类型:__Usual
返回值
类型:
Boolean
逻辑值
备注
如果找到匹配项,IndexSeek( )返回真(.T.);否则返回假(.F.)。
您只能在设置了索引顺序的表上使用IndexSeek( ),并且只能搜索索引键。
除非将Set EXACT设置为OFF,否则匹配必须精确。
IndexSeek( )提供了一种快速搜索记录的方法,而无需移动记录指针。
由于记录指针不移动,规则和触发器不会执行。如果IndexSeek( )返回真
(.T.)表示找到匹配记录,您可以再次执行IndexSeek( ),将第二个参数lMovePointer设置为真
(.T.)以移动到匹配记录。
当您尝试在最近创建的记录中查找值时(使用Insert Into或Append Blank创建),
IndexSeek( )返回假(.F.),直到记录指针移动。您可以执行GO BOTTOM命令,
使IndexSeek( )找到最近创建的记录。
参见