Изучение свойств редактора БД Browse. Индексирование базы данных, страница 3

2.1. 4. Организация поиска данных

Одним из основных требований, предъявляемых к СУБД, является возможность быстрого поиска требуемых записей среди большого объема информации. Если пользователь знает номер искомой записи, то самый быстрый способ перехода к ней состоит в использовании опции Goto... из меню команды Record.

Пример 1. Поиск записи с нужным номером.

1. Выберите опцию Browse из меню команды Database.

2. Выберите опцию Goto из меню команды Record. На экране появится окно диалога "Goto". Возможно четыре способа перехода к нужной записи:

- переход к первой записи (Тор),

- переход к последней записи (Bottom),

- переход к записи с нужным номером (Record),

- переход на нужное число записей от текущей (Skip). Выберите кнопку Record и введите рядом с ней в окне число "б". Нажмите кнопку Goto. Указатель в таблице STUDENT переместился на запись с номером 6.

3. Выберите опцию Goto. В окне диалога выберите кнопку Skip. и введите число "2". Нажмите кнопку Goto. Указатель в таблице переместился на запись с номером

8.

Для поиска записи по данным, содержащимся в ней, существует опция Locate.

Пример 2. Поиск записи по контексту

1. Выберите опцию Browse из меню команды Database. Если на экране режим таблицы, то переключитесь в режим формуляра при помощи опции Change из меню команды Browse, так как в этом режиме можно увидеть результаты поиска наиболее наглядно.

2. Выберите из меню команды Record опцию Locate. Откроется окно диалога "Locate". В нем устанавливаются критерии поиска, которым должны удовлетворять разыскиваемые записи данных. Нажмите кнопку For. На экране появится окно диалога "Expression Builder". Установите указатель "мыши" на поле "Факультет" и дважды щелкните левой кнопкой "мыши". Поле появилось в строке ввода Locate Record For.

3. Разверните при помощи "мыши" в области Function список логических функций Logical и выберите из него операцию сравнения "=". Щелкните два раза левой кнопкой "мыши" для перемещения знака в строку ввода.

4. Аналогично выберите из списка функций String элемент text. В строке ввода между кавычками напечатайте ФИСТ. Критерий поиска определен.

5. Нажмите кнопку ОК.

6. В окне диалога "Locate" нажмите кнопку Locate.

7.  Указатель в таблице переместился на запись, в которой содержатся данные об абитуриенте, желающем учиться на ФИСТ.

8. Для продолжения поиска выберите опцию Continue из меню команды Record или нажмите клавиши Ctrl+ K.

9. Указатель переместился на следующую запись, удовлетворяющую заданному условию.

2.1. 5. Поиск записи в проиндексированной БД

Реализация поиска путем последовательного перебора запись за записью и проверки условия приводит к значительным затратам времени. Индексы представляют собой наиболее эффективное средство, которое позволяет значительно ускорить поиск данных в таблице. Значения индексов хранятся в отдельном файле, называемом индексным файлом, в упорядоченном виде. Поиск в этом файле осуществляется оптимальным методом. Для каждого значения индекса в индексном файле содержится уникальная ссылка, указывающая на местонахождение соответствующей индексу записи в таблице. Поэтому при поиске записи осуществляется не последовательный просмотр всей таблицы, а прямой доступ к записи на основании упорядоченных значений индекса. В индексном файле поиск осуществляется