Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 5.doc
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
1.02 Mб
Скачать

1.2. Задание индексов

Задание индекса сводится к определению

  • состава полей;

  • параметров;

  • имени.

Эти элементы устанавливаются или изменяются при выполнении операций соз­дания, изменения и удаления индекса.

Для выполнения операций, связанных с заданием индексов, необходимо вы­брать пункт Secondary Indexes (Вторичные индексы) комбинированного списка, при этом под списком появляются кнопки Define (Определить) и Modify (Изменить), список индексов и кнопка Erase (Удалить). В списке индексов вы­водятся имена созданных индексов, на рис. 5.2 это индекс indName.

Напомним, что для таблиц Paradox индекс также называют вторичным индексом.

Создание нового индекса начинается с нажатия кнопки Define, являющейся всегда доступной. Это приводит к появлению окна Define Secondary Index (Задание вторичного индекса), в котором задаются состав полей и параметры индекса (рис. 5.5).

В списке Fields окна выводятся имена всех полей таблицы, включая и те, кото­рые нельзя включать в состав индекса, например, графическое поле или поле комментария. В списке Indexed Fields (Индексные поля) содержатся поля, кото­рые включаются в состав создаваемого индекса. Перемещение полей между списками выполняется выделением нужного поля (полей) и нажатием располо­женных между списками кнопок с изображением горизонтальных стрелок. Имена полей, которые нельзя включать в состав индекса, выделяются в левом списке серым цветом. Поле не может быть повторно включено в состав индек­са, если оно уже выбрано и находится в правом списке.

Замечание

При работе с записями индексные поля обрабатываются в порядке следования этих полей в составе индекса. Это нужно учитывать при указании порядка по­лей в индексе.

Рис. 5.5. Окно задания индекса

Изменить порядок следования полей в индексе можно с помощью кнопок с изображением вертикальных стрелок, имеющих общее название Change order (Изменение порядка). Для перемещения поля (полей) необходимо его (их) вы­делить и нажать нужную кнопку.

Переключатели, расположенные в нижней части окна задания индекса, позво­ляют указать следующие параметры индекса:

  • Unique — индекс требует для составляющих его полей уникальных значений;

  • Maintained — если таблица открыта, индекс автоматически не модифициру­ется;

  • Case sensitive — для полей строкового типа учитывается регистр символов;

  • Descending — сортировка выполняется в порядке убывания значений.

Так как для таблиц dBase нет ключей, то для них использование параметра Unique является единственной возможностью обеспечить уникальность записей на физическом уровне (уровне организации таблицы), не прибегая к програм­мированию.

После задания состава индексных полей и нажатия кнопки ОК появляется окно Save Index As, в котором указывается имя индекса (рис. 5.6). Для удобства об­ращения к индексу в его имя можно включить имена полей, указав какой-нибудь префикс, например ind. Нежелательно образовывать имя индекса только из имен полей, т. к. для таблиц Paradox подобная система именования исполь­зуется при автоматическом образовании имен для обозначения ссылочной цело­стности между таблицами. После повторного нажатия ОК сформированный ин­декс добавляется к таблице, и его имя появляется в списке индексов.

Рис. 5.6. Задание имени индекса

Созданный индекс можно изменить, определив новый состав полей, параметров и имени индекса. Изменение индекса не отличается от процесса его создания. После выделения индекса в списке и нажатия кнопки Modify снова открывается окно задания индекса (рис. 5.5). При нажатии кнопки ОК появляется окно сохранения индекса (рис. 5.6), содержащее имя изменяемого индекса, которое можно исправить или оставить прежним.

Для удаления индекса его нужно выделить в списке индексов и нажать кнопку Erase. В результате индекс удаляется без предупреждающих сообщений.

Кнопки Modify и Erase доступны, только если индекс выбран в списке.