Без перемещения указателя записи таблицы ищет в индексированной таблице первую встретившуюся запись, чей индексный ключ соответствует указанному выражению.

INDEXSEEK(eExpression [, lMovePointer [, nWorkArea | cTableAlias
   [, nIndexNumber | cIDXIndexFileName | cTagName]]])

Параметры

eExpression

Указывает выражение индексного ключа, которое вы желаете найти с помощью поиска INDEXSEEK().

lMovePointer

Определяет, будет ли перемещен указатель записи таблицы к соответсвующей условию записи. если lMovePointer равен .T. и соответствующая условию запись существует, указатель записи таблицы смещается к этой записи. Если же lMovePointer равен .T., но соответствующая условию запись не существует, указатель записи никуда не перемещается. Если lMovePointer равен .F. или вообще опущен, указатель записи никуда не смещается, даже если соответствующая условию запись присутствует в таблице.

nWorkArea

Указывает рабочую область таблицы, в которой производится поиск по индексному ключу.

cTableAlias

Указывает псевдоимя таблицы, в которой производится поиск. Если вы опустите nWorkArea и cTableAlias, то поиск будет производится в текущей выбранной области.

nIndexNumber

Указывает номер индексного файла или тэга, используемого для поиска индексного ключа. nIndexNumber ссылается на индексный файл в том порядке, в котором он перечислен в USE или SET INDEX. Открытые .IDX файлы нумеруются с единицы в том порядке, в котором они показались в USE или SET INDEX. Тэги в структурном .cdx файле (если таковой существует) нумеруются в порядке, в каком они были созданы. И, наконец, тэги в любых открытых независимых .cdx файлах нумеруются в порядке, в котором они были созданы. Для получения более подробной информации нумерации индексов, смотрите SET ORDER.

cIDXIndexFileName

Указыает .idx файл, который используется для поиска индексного ключа.

cTagName

Определяет тэг .cdx файла, который используется для поиска индексного ключа. Имя тэга может быть взято из структурного .cdx файла или любого открытогоо независмого .cdx файла.

ЗамечаниеЗамечание

Файл .idx file имеет преимущество если одновременно существуют дублирующие друг друга имена .idx файла и тэга.

Expand image Возвращаемое значение

Логическое значение

Expand image Примечания

INDEXSEEK( ) возвращает true (.T.), если соответствие найдено; в противном случае возвращается false (.F.). Вы можете использовать INDEXSEEK( ) только с теми таблицами, у которых установлено индексного упорядочивание или вы можете искать только индексный ключ. Соответствие должно быть точным, только если SET EXACT не был установлен в OFF.

INDEXSEEK( ) предоставляет быстрый путь для поиска записей без перещения указателя таблицы. Вследствие того, что указатель не перемещается, правила и триггеры не исполняюстя. Если INDEXSEEK( ) возвратит true (.T.), указывающий, что найдена соответствующая условию запись, вы можете выполнить INDEXSEEK( ) повторно со вторым параметром lMovePointer, установленным в true (.T.) для смещения указателя к соответствующей условию записи.

INDEXSEEK( ) возвращает false (.F.), когда вы пытаетесь найти значение в записи, созданной самой последней (созданной через INSERT INTO или APPEND BLANK) до перемещения указателя. Вы можете использовать команду GO BOTTOM, чтобы INDEXSEEK( ) смогла найти запись, созданную последней.

Expand image Смотрите также