Индексы – это структуры, определяющие порядок записей в таблице. Обычно данные в таблице не упорядочены. На практике же, возникает необходимость обращаться к ним в определенном порядке. Например, при печати списка имен заказчиков надо печатать их в алфавитном порядке. Если печатаются почтовые наклейки, то, вероятно, их надо печатать в порядке почтового индекса. Тип обработки, выполняемый над базой, определяет порядок, в котором должны быть расположены строки таблицы. Это главное для таблицы, которая будет по-разному использоваться в различным операциях.
Если запрос обуславливает различный порядок строк в таблице, то их придется реорганизовывать. Но для этого требуется слишком много времени. Решение проблемы состоит в поддержке маленьких таблиц, называемых индексами, которые определяют последовательность чтения записей из таблицы. Индексный файл не содержит информацию, непосредственно появляющуюся в таблице, а содержит только числа, определяющие порядок записей.
Пусть 5-я запись в таблице должна появится первой, когда строки таблицы запрошены в алфавитном порядке. Тогда первый элемент индексного файла содержит значение 5. Значит, при извлечении строк заданной таблицы из базы сначала будет извлечен 5-й элемент.
Таблицы может иметь более одного индекса. Для этого надо задать поля, на которых будет основан индекс.