FileSize(var F) : Longint

и его размер (количество записей) в виде значения типа Longint.

Для пустого файла вызов FileSize возвращает значение 0. Локализация ошибок при обращении к внешним носителям для обоих функций производится через IOresult.

Для того чтобы очередная запись могла быть записана в конец типизированного файла, необходимо перевести текущую файловую позицию в конец файла. Когда создается новый файл, это происходит автоматически после формирования каждой очередной записи. Если файл уже создан и файловая позиция, установленная по Seek, находится где-нибудь в начале файла (FilePos(F) < FileSize(F)), то в конец файла ее позволяет перевести вызов

Seek(F, FiieSize(F));

В каждом файле число логических и физических записей совпадает, а при позиционировании номер физической записи на единицу меньше номера логической записи.

Когда записи располагаются в неотсортированном по фамилиям порядке, поиск необходимо осуществлять последовательно по всему файлу. Такое расположение записей требует значительных расходов ресурсов системы для поиска нужной записи. Любая программная система по манипулированию базами данных всегда имеет в своем составе средства упорядочения записей по ключу.

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

На практике это выражается в создании так называемых индексных файлов по отношению к главному файлу данных. Индексные файлы содержат номера записей главного файла, отсортированных по конкретному ключу. Такое построение позволяет экономить время обращения к внешним носителям, так как во всех перемещениях при сортировке участвуют записи малой длины, содержащие номера записей главного файла в соответствии с ключом сортировки.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: