Описание операций над объектами в БД
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

 

        [] DB.NEW [] -- создать новую БД

        [] DB.OPEN [] -- открыть БД

        [] DB.CLOSE [] -- закрыть БД

 

Операции клонирования:

 

     [oid] CLONE [oid'] -- клонировать объект

        [] CLONE_ROOT [oid'] -- Создать объект от "Корень"

     [int] CLONE_INT [oid'] -- Создать объект "Целое"

["string"] CLONE_STR [oid'] -- Создать объект "Строка"

["string"] CLONE_AGG [oid'] -- Создать объек-агрегат

[oid_if oid_then oid_else]

           CLONE_BIO [oid'] -- Создать объект-условие

        [] CLONE_SET [oid'] -- Создать объект-множество

        [] CLONE_SEQ [oid'] -- Создать объект-последовательность

 

OIDROOT, OIDINT, OIDAGG, …, OIDSEQ -– Узнать идентификаторы соотв. Объектов

 

[oid_bhr] SET_BHR [] -- переопределить поведение

        [] GET_BHR [oid] -- узнать поведение

  [oid_kh] SET_KH [] -- переопределить действие

        [] GET_KH [oid] -- узнать действие

     [oid] GET_INT [int] -- Получить целое число из объекта-целого

[int oid] SET_INT [] -- Занести целое число в объект-целое

     [oid] PRINT_STR [] -- Печатать на экране содержимое строки

 ["string" oid] SET_STR [] -- Занести строку в объект-строку

 

[oid_super oid] SUPER+ [] -- наследовать данные из oid_super в oid

     [oid] DELOBJ [] -- удалить объект

 

Операции над множеством:

 

[oid_el oid] SET+E [] -- добавить элемент в множество

[oid_el oid] SET-E [] -- удалить элемент из множества

[oid_el oid] SET?E [0/1] -- найти элемент в множестве

[oid1 oid] SET+  [] -- объединение

[oid1 oid] SET-  [] -- разность

[oid1 oid] SET*  [] -- пересечение

 

Операции над списком:

 

 [oid_el n oid] SEQ+E [] -- добавить элемент в последовательность

   [n oid] SEQ-E [] -- удалить n-й элемент из

                                последовательности

[oid_el oid] SEQ?E [0/n] -- найти позицию в последовательности

   [n oid] SEQ?N [0/oid] -- определить oid n-го элемента послед-ти

 

Операции над агрегатом:

 

[fid oid_etalon oid] AGG+F [] -- добавить поле к объекту

     [fid oid] AGG-F [] -- удалить поле из объекта

     [fid oid] ETALON [oid] -- получить идентификатор объекта-эталона

     [fid oid] FIELD [oid] -- получить идентификатор

                                 объекта-значения

 

 

Операции над объектом-условием:

 

      [oid] GET_BIO

[oid_else oid_then oid_if] -- Получить параметры объекта-условия

[oid_else oid_then oid_if oid]

            SET_BIO []   -- Сохранить параметры объекта-условия

 

Специальные операции:

 

[oid_str oid] SET_NAMEOBJ [oid] -- именовать объект

[oid_str fid] SET_NAMEFID [fid] -- именовать поле

[oid_str] NAMEOBJ [oid] -- получить идентификатор по имени

[oid_str] NAMEFID [fid] -- получить идентификатор поля по имени

[oid_mess oid_par oid] SEND [] -- послать сообщение объекту

 [oid_mess oid_obj] METHOD? [] -- определить идентификатор метода

[oid1 oid] CHIELD [1/0] -- определить, является ли oid1 потомком oid

[oid_kh] RUN_KH    [] -- выполнить knowhow

      [] NCHAN [chan] -- узнать номер текущего канала

  [chan] !NCHAN    [] -- переключиться на заданный канал

 

Операции просмотра:

 

[oid] JVIEW [] -- просмотр журнала

[] A.VIEW [] -- просмотр адресов объектов в БД

[] Q.VIEW [] -- просмотр очереди

[] IC [] -- просмотр состояния канала

 

Требования к техническим и программным средствам

 

 

ДССП реа­лизована на множестве компьютерных платформ (VAX, PDP-11, IBM PC, R3000, MC68020, SPARC) и операционных систем (MSDOS, MSDOS-экстендеры, UNIX, RT-11, RSX, OS9, CPM и др.). В дан­ный момент практически закон­чена разработка ДССП на Си, что обес­печивает перенос этой системы на любую платформу, где есть Си.

 

Аппаратные средства:

Любая платформа, на которой функционирует ДССП, с объемом оперативной памяти для нужд БД не менее 1 Мб.

 

Программные средства:

ДССП с диспетчером параллельных процессов (версия 4.42) и Операционная Система.

 

Разрабатываемая СУООБД может также работать в качестве host-программы на файл-сервере, обрабатывая команды с рабочих станций, поступающие в их персональные ящики на файл-сервере. Ответ рабочие станции получают также через почтовые ящики.

 

В дальнейшем, могут быть реализованы сетевые протоколы и тогда СУООБД будет являться сервером в клиент-серверных приложениях.

 

Использование отдельных почтовых ящиков для нескольких параллельно работающих пользователей позволяет возложить на СУООБД функции монитора [6], осуществляющего линеаризацию поступающих запросов к содержимому СУООБД.

 

Реализация прототипа

 

Построитель

LOAD TIMEM

LOAD M0

LOAD M2

LOAD Soms

LOAD CHMS

LOAD SYSOBJS

LOAD M3

LOAD LS_CASH

UNDEF

 

PROGRAM $KH_VOC

 

Дата: 2019-05-28, просмотров: 177.