Возвращает последовательность упорядочения для индекса или индексного тэга.
IDXCOLLATE([cCDXFileName,] nIndexNumber [, nWorkArea | cTableAlias]) |
Параметры
- cCDXFileName
- Определяет имя составного индексного файла. Составной индексный файл, который Вы определяете, может быть структурным составным индексным файлом, автоматически открываемым вместе с таблицей или независимым составным индексным файлом.
- nIndexNumber
- Определяет индекс или индексный тэг для которых IDXCOLLATE( ) возвращает последовательность упорядочения. IDXCOLLATE( ) возвращает последовательность упорядочения для индексов и индексных тэгов в порядке увеличения nIndexNumber от 1 до общего количества открытых индексных файлов и индексных тэгов:
- Последовательность упорядочения для единственного индекса индексных файлов .idx (если какой-то является открытым), возвращается в первую очередь. Порядок, в котором индексные файлы с единственнм индексом включены в команде USE или SET INDEX определяет, как будут возвращены последовательности упорядочения.
- Последовательности упорядочения для тэгов в структурном составном индексе (если они присутствуют), возвращаются в следующую очередь. Последовательности упорядочения возвращаются для тэгов в порядке, в котором тэги созданы в структурном составном индексе.
- Последовательности упорядочения для тэгов в любых открытых независимых составных индексах возвращаются в последнюю очередь. Последовательности упорядочения возвращаются для тэгов в порядке, в котором тэги созданы в независимых составных индексах.
- Последовательность упорядочения для единственного индекса индексных файлов .idx (если какой-то является открытым), возвращается в первую очередь. Порядок, в котором индексные файлы с единственнм индексом включены в команде USE или SET INDEX определяет, как будут возвращены последовательности упорядочения.
- nWorkArea
- Определяет рабочую область таблицы для который IDXCOLLATE( ) возвращает индексный файл и последовательность упорядочения для индексного тега. IDXCOLLATE( ) возвращает пустую строку, если таблица не является открытой в рабочей области, которую Вы определяете.
- cTableAlias
- Определяет псевдоним таблицы для который IDXCOLLATE( ) возвращает индексный файл и последовательность упорядочения для индексного тэга. Visual FoxPro генерирует сообщение об ошибке, если Вы определяете псевдоним таблицы, которого не существует.
Возвращаемое значение
Символьное
Замечания
IDXCOLLATE( ) может использоваться, чтобы возвратить последовательность упорядочения для каждого тэга в составных мультииндексных файлах, что позволяет Вам полностью удалить индексный файл и восстановить его правильно, используя ряд команд SET COLLATE и INDEX .
Обратите внимание, что IDXCOLLATE( ) не требуется для надлежащего функционирования REINDEX , потому что данные о последовательности упорядочения присутствуют в существующих индексах и индексных тэгах.
Для дополнительной информации о многонациональной поддержке Visual FoxPro, см. Разработка Многонациональных Приложений .
Пример
Следующий пример открывает таблицу Customer
в базе данных testdata
. FOR ... ENDFOR используется, чтобы создать цикл в котором используется IDXCOLLATE( ) , чтобы вывести последовательности упорядочения каждого индексного тэга в структурном индексе Customer
. Имя каждого структурного индексного тэга отображено вместе с его данными о последовательности упорядочения.
Скопировать код | |
---|---|
CLOSE DATABASES OPEN DATABASE (HOME(2) + 'Data\testdata') USE Customer && Open Customer table. CLEAR FOR nCount = 1 TO TAGCOUNT( ) IF !EMPTY(TAG(nCount)) && Checks for tags in the index. ? TAG(nCount) + ' ' && Display tag name. ?? IDXCOLLATE(nCount) && Display collation sequence. ELSE EXIT && Exit the loop when no more tags are found. ENDIF ENDFOR |
См. Также
Другие Ресурсы
SET COLLATE КомандаРазработка Многонациональных Приложений
CREATE TABLE - SQL Команда
CREATE CURSOR - SQL Команда
ALTER TABLE - SQL Команда
INDEX Команда
Функции
Справочник Языка