Записи в файлах базы данных размещены по ключам упорядочения. Возможны два вида упорядочения записей в таблице: а) логическое (CREATE INDEX - индексирование); б) физическое (SORT - сортирование).
Ключи сортирования должны быть сравнимыми, т. е. любые два ключа сортирования К1 и К2 должны удовлетворять одному из трех отношений:
К1 <К2, К1 =К2,К1 >К2.
Ключ, на который имеется ссылка в другой таблице, называется внешним.
Для манипулирования со значением строк таблицы предназначены индексы. Индексирование - это упорядочение записей по ключу (алфавиту, хронологии, в порядке возрастания или убывания). Для индексного поля создается упорядоченный список значений для этого поля. В таблице данных строки не упорядочены. Для поиска строки с заданным значением поля- ключа программа последовательно просматривает все записи таблицы, строка за строкой, пока не встретит строку с заданным значением поля. Это долгий путь. Индекс же сразу находит запись по значению поля-ключа.
Индекс (индексный файл) создается по команде:
CREATE INDEX <имя индекса> ON <имя таблицы>
(<имя столбца>[,<имя столбца>]...);
Пример. Создать индекс по полю fio таблицы Spisok:
CREATE INDEX fio ON Spisok (fio);
Таблица индексов (индексный файл), созданная командой CREATE INDEX, для пользователя невидима. SQL сам автоматически обращается к таблице индексов по мере надобности.