Читайте также:
|
|
Будем рассматривать файл как последовательность записей, причем каждая запись состоит из одной и той же совокупности полей. Поля могут иметь либо фиксированную, либо переменную длину.
В языке Паскаль предусмотрена работа с файлами, чьи записи имеют фиксированную длину. Они широко используются в системах управления базами данных для хранения данных сл сложной структурой. Наиболее часто для работы с файлами применяются следующие операторы.
1. INSERT вставляет определенную запись в определенный файл.
2. DELETE удаляет из определенного файла все записи, содержащие указанные значения в указанных полях.
3. MODIFY изменяет все записи в определенном файле, задав указанные значения определенным полям в тех записях, которые содержат указанные значения в других полях.
4. RETRIEVE отыскивает все записи, содержащие указанные значения в указанных полях.
Простейшим способом реализации перечисленных операторов работы с файлами является следующая. Поиск записи с указанными значениями в определенных полях осуществляется путем полного просмотра файла и проверки каждой его записи на наличие в ней заданных значений. Вставку в файл можно выполнить путем присоединения соответствующей записи к концу файла. В случае изменения записей необходимо просмотреть файл, проверить каждую запись и решить, соответствует ли она заданным условиям. Если соответствует, в запись вносятся требуемые изменения. В случае операции удаления ищутся записи, чьи поля соответствуют условиям удаления, а затем выбирается способ удаления требуемых записей.
Очевидным недостатком последовательного файла является то, что операторы с такими файлами выполняются медленно, т.к. выполнение каждой операции требует прочтения всего файла, а затем еще и выполнения перезаписи некоторых блоков. Однако существуют способы организации файлов, которые позволяют обращаться к записи, считывая в основную память лишь небольшую часть файла.
Такие способы организации файлов предусматривают наличие у каждой записи ключа, т.е. совокупности полей, которая уникальным образом идентифицирует каждую запись. Поиск записи, когда заданы значения ее ключевых полей, является типичной операцией. Еще одним непременным атрибутом быстрого выполнения операцией с файлами является возможность непосредственного доступа к блокам. Рассмотрим несколько способов ускорения операций с файлами.
Дата добавления: 2015-07-16; просмотров: 58 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Особенности операций с внешней памятью | | | Хешированные файлы |