Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kursovoy.docx
Скачиваний:
9
Добавлен:
08.12.2018
Размер:
182.86 Кб
Скачать
      1. Поиск информации в базе

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

Алгоритм построения блока поиска:

  1. Создаем переменную для поиска и переменную – признак (было найдено искомое или нет) Например: Var Poisk:string; k:integer;

  2. Открываем входной файл для поиска Reset(имя файла);

  3. Выполняем ввод в переменную для поиска.

  4. Переменной признака присваиваем значение 0.

  5. Организуем цикл While not eof(имя файла) do

  6. Считываем запись из файла (Например: read(a,telspr);).

  7. Сравниваем переменную поиска с полем записи по которому осуществляет поиск.

  8. Если условие Истина, то вывести информацию об этой записи и переменной. Признаку присваиваем значение 1.

  9. Сравниваем параметр. Если параметр не равен 1, то выводим на экран сообщение «Записи не найдены» Например if k<>1 then writeln(‘Записи не найдены’);

  10. Закрываем входной файл Close(имя файла).

      1. Файлы типа «Запись»

В Паскале существуют файлы, элементами которого может быть структура «Запись».

Файл является последовательностью записей одинакового типа. Такая разновидность файлов называется «Типизированные» фалы. Они применяются в основном для создания различных баз данных. Чтобы организовать в программе работу с таким файлом, выполняются следующие действия:

  1. Описать в разделе типов нестандартный тип данных для записи, задавая произвольные названия (Например ZAP).

TYPE ZAP=RECORD

A:CHAR;

B:REAL;

END;

  1. Задать файл в разделе var и этому файлу задать описанный в разделе TYPE нестандартный тип VAR F:FILE OF ZAP;

  2. Для обращения к файлу описывается в разделе VAR специальная переменная такого же типа. ZR:ZAP;

Для создания файла информация запрашивается с клавиатуры. Например: writeln(‘Ведите…’);

Readln(имя записи. имя поля);

Заполняются все поля записи и запись выводится в файл. Writeln(f,zr);

Где f – имя файла, ZR – имя записи.

Поля можно вывести: writeln(zr.a,’ ’,zr.b);

Обработка элементов файла ведется в цикле. Например:

While not eof(f) do…

Окончание файла распознается с помощью функции EOF, как и в текстовом файле. Но функция EOLN в типизированных файлах неприменима. Типизированный файл нельзя посмотреть в текстовом редакторе типа «блокнот» или другом. При желании посмотреть текстовый файл нужно написать программу вывода записей на экран.

      1. Дозапись элементов в типизированные файлы

  1. Между командами CLOSE и REPEAT повторить блок создания файла от REPEAT до UNTIL P= количество записей

  2. Перед REPEAT поставить команды:

RESET – открыть для чтения

SEEK(имя файла, количество записей в файле) – Найти последнюю запись и приготовиться к выводу после нее дополнительных записей. Количество выводимых записей установить в P.

Примечание. Если предполагается блок дозаписи повторять несколько раз, то Р нужно обнулять(после дозаписи или перед входом в блок)

Команду SEEK можно использовать в таком формате SEEK(имя_файла,filesize(имя_файла)); Тогда количество элементов в фале будет определяться автоматически и каждый раз заново.

  1. Откорректировать запросы новой информации и вывод в файл.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]