
SEEK 函 数





在一个已建立索引的表中搜索一个记录的第一次出现位置
该记录的索引关键字与指定表达式相匹配 SEEK 函数返回一个逻辑值
指示搜索是否成功
语 法
SEEK ( eExpression [, n W orkArea | cTableAlias
[, nIndexNumber | cIDXIndexFileName | cTagName ]])
返 值 类 型逻辑值 参 数 描 述
eExpression

指
定 SEEK
函 数 搜 索 的 索 引 关 键 字 表 达 式
n W o rkArea
指 定
要 在 其 中 搜 索 索 引 关 键 字 的 表 所 在 工 作 区 的 编 号
cTableAlias
指 定
要 搜 索 的 表 的 别 名

如
果 省 略 了 nWorkArea 或 cTableAlias 则 在 当 前 工 作 区 中 搜 索
表
nIndexNumber
指 定
用 来 搜 索 关 键 字 的 索 引 文 件 或 索 引 标 识 编 号
nIndexNumber 指 出 了 索



引
文 件 在 USE 和 SET INDEX 命 令 中 列 出 的 编 号 首 先 按 照 USE 或
SET INDEX 中 的 顺 序 对 打 开 的 .ID X 文 件 进 行 编 号 然 后 对 结
构 .CDX 文 件







如
果 存 在
中 的 标 识 进 行 编 号 其 顺 序 与 创 建 它 们 的 顺 序 相 同 最 后
对所 有 打 开 的 独 立 .CDX 文 件 进 行 编 号 其 顺 序 也 与 创 建 的
顺 序 相 同 有 关 索引 编 号 的 详 细 内 容 请 参 阅 SET ORDER
C IDXIndexFileName
指 定
用 来 搜 索 索 引 关 键 字 的 .ID X 文 件
cTagName


指
定 用 来 搜 索 索 引 关 键 字 的 .CDX 文 件 的 标 识 标 识 名 称 可 以
来 自 结 构 文件 .CDX 也 可 以 来 自 任 何 打 开 的 独 立 .CDX 文 件

注
意 如 果 存 在 相 同 的 .ID X 文 件 和 标 识 名 称 优 先 使 用 .ID X
文 件
说 明





只能对设置了索引排序的表使用
SEEK 函数 并且只能搜索索引关键字 除非 SET EXACT 的设置为 OFF 时
否则所指的匹配是完全相匹配


















如果找到了匹配的记录
则 SEEK 函数返回 真 (.T.) 记录指针指向找到的记录 如果找不到匹配记录
SEEK 函数返回 假 (.F.) 此时记录指针移到文件 尾 执行 SEEK 函数同先执行
SEEK 命令然后执行 FOUND 函数的结果一样



如果省略了
nIndexNumber IDXIndexFileName 和 cTagName 参数 那么 SEEK
函数使用主控索引或索引标识来搜索索引关键字
示 例
CLOSE DATABASES
OPEN DATABASE (HOME(2) + 'Data\testdata')
USE customer ORDER cust_id && 打开 Customer 表
? SEEK ('CHOPS ') && 返回 .T., 找到记录
请 参 阅

EOF
, FOUND
, INDEXSEEK
, LOCATE , SEEK , SET ORDER
