Язык манипулирования данными в сетевой модели

Все операции манипулирования данными в сетевой модели делятся на навигационные операции и операции модификации.

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

Операции модификации осуществляют как добавление новых экземпляров отдельных типов записей, так и экземпляров новых наборов, удаление экземпляров записей и наборов, модификацию отдельных составляющих внутри конкретных экземпляров записей. Средства модификации данных сведены следующей таблице:

Таблица. Операторы манипулирования данными в сетевой модели
Операция Назначение
READY Обеспечение доступа данного процесса или пользователя к БД (сходна по смыслу с операцией открытия файла)
FINISH Окончание работы с БД
FIND Группа операций, устанавливающих указатель найденного объекта на текущий объект
GET Передача найденного объекта в рабочую область. Допустима только после FIND
STORE Помещение в БД записи, сформированной в рабочей области
CONNECT Включение текущей записи в текущий экземпляр набора
DISCONNECT Исключение текущей записи из текущего экземпляра набора
MODIFY Обновление текущей записи данными из рабочей области пользователя
ERASE Удаление экземпляра текущей записи

В рабочей области пользователя хранятся шаблоны записей, программные переменные и три типа указателей текущего состояния:

· текущая запись процесса (код или ключ последней записи, с которой работала данная программа);

· текущая запись типа записи (для каждого типа записи ключ последней записи, с которой работала программа);

· текущая запись типа набор (для каждого набора с владельцем T1 и членом T2 указывается, T1 или T2 были последней обрабатываемой записью).

На рис. 21 представлена концептуальная модель торгово-посреднической организации.

Язык манипулирования данными в сетевой модели - student2.ru


Рис. 21.Схема БД "Торговая фирма"

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

RECORD Цены

02 Цена TYPE REAL

02 Товар VIRTUAL

SOURCE IS Товары.НаименованиеТовара

OF OWNER OF Товар-Цены SET

Наиболее интересна операция поиска ( FIND ), так как именно она отражает суть навигационных методов, применяемых в сетевой модели. Всего существует семь типов операций поиска:

1. По ключу (запись должна быть описана через CALC USING ...):

2. FIND <Имя записи>

RECORD BY CALC KEY <Имя параметра>

3. Последовательный просмотр записей данного типа:

4. FIND DUPLICATE <Имя записи>

RECORD BY CALC KEY

5. Найти владельца текущего экземпляра набора:

FIND OWNER OF CURRENT <Имя набора> SET

6. Последовательный просмотр записей—членов текущего экземпляра набора:

7. FIND (FIRST | NEXT) <Имя записи>

8. RECORD IN CURRENT <Имя набора>

SET

9. Просмотр записей—членов экземпляра набора, специфицированных рядом полей:

10. FIND [DUPLICATE] <Имя записи>

11. RECORD IN CURRENT <Имя набора>

SET USING <Список полей>

12.Сделать текущей записью процесса текущий экземпляр набора:

FIND CURRENT OF <Имя набора> SET

13.Установить текущую запись процесса:

FIND CURRENT OF <Имя записи> RECORD

Например, алгоритм и программа печати заказов, сделанных Петровым, будут выглядеть так:

Язык манипулирования данными в сетевой модели - student2.ru


Наши рекомендации