Интерфейс языка данных

редактировать

Интерфейс языка данных (язык данных / I, DL / I, язык данных / интерфейс, язык данных / один) - это языковая система, используемая для доступа IBM к IMS базам данных и его системе передачи данных.

Он реализуется с любого языка путем вызова программной заглушки DFSLI000. Эта заглушка имеет точки входа для работы с различными языками программирования, например. вызов CBLTDLI из программы COBOL. Эта заглушка связана с вызывающей программой, передает запрос в систему IMS и возвращает результаты и код состояния.

В любой полнофункциональной базе данных IMS наименьший элемент, который можно получить, - это сегмент. Каждый сегмент состоит из полей, одно из которых, как правило, является ключевым полем. Сегменты иерархически расположены в базе данных, причем тип сегмента самого высокого уровня является корневым. 255 различных типов сегментов, до 15 уровней, разрешены в любой базе данных. Запись базы данных состоит из определенного корневого сегмента и всех зависимых от него дочерних сегментов - нет ограничений на количество сегментов в записи или на количество записей в базе данных (кроме физических ограничений пространства для хранения).

Структура любой базы данных представляется прикладной программе в виде PCB (Program Communication Block), и она используется как один из параметров , передаваемых в заглушку. Другие типы печатных плат используются для отправки и получения сообщений обработки транзакций, доступа и записи на экран пользователя VDU, а также для печати отчетов и т. Д.

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

Для всех языков, кроме PL / I, первым параметром в вызове является код функции - четырехзначное поле, например: «GU» (Получить Уникальный), «GN» (Получить следующий), «REPL» (Заменить) и «ISRT» (Вставить). В PL / I из-за того, что этот язык не помечает последний параметр «1» в бите 0, первый параметр вместо этого должен быть полным словом (фиксированная ячейка (31)), содержащим количество следующих параметров.

Типичный вызов из программы COBOL может быть CALL «CBLTDLI» USING GU, Stores-Database-PCB, Stores-Segment-Area, Stores-Root-SSA. Затем программа будет автоматически ждать, пока запрошенные данные будут извлечены и помещены в область сегмента. Код состояния, содержащийся на плате, будет обновлен либо пробелами (если все прошло хорошо), либо некоторым информационным кодом или кодом ошибки.

Типичным вызовом из программы PL / I может быть CALL PLITDLI (FOUR, GU, Stores-Database-PCB, Stores-Segment-Area, Stores-Root-SSA);.

Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-17 14:08:32
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте