Классика баз данных - статьи

       

Реализации команд управления.


Совокупность команд, служащих для управления R*O-системой, представляет собой непроцедурный язык высокого уровня, который необходимо рассматривать как основной (возможно единственный) способ доступа к данным, хранящимся в системе. Входящие в этот язык команды можно разделить на две группы, составляющие соответственно подъязык определения данных (DDL) и подъязык манипулирования данными (DML). Предполагается, что команды этого языка транслируются в команды используемой РСУБД.

Действия, которые должны выполнять основные команды DDL, уже освещены нами как операции над каталогом системы. Как мы уже сказали, непроцедурные команды, определяющие реализацию компонентов или триггеров, содержат вычисляющие выражения. Указанные процедурные выражения транслируются в процедуры используемой РСУБД, которые получают в качестве обязательного параметра объектные идентификаторы, определяющие объект или группу объектов. Эти процедуры сохраняются в таблице каталога, откуда они могут быть загружены для выполнения. Таким образом, при обработке процедурных расширений DDL транслятор выступает в роли компилятора, преобразующего R*O код в код используемой РСУБД.

Команды подъязыка манипулирования данными (DML) служат для создания уничтожения объектов данных, а также для управления состоянием этих объектов и для получения информации о данных, хранящихся в системе. Отметим, что, обрабатывая и выполняя команды DML, транслятор выступает в роли уже интерпретатора.

Команда NEW t(constructor_parameters) служит для создания новых объектов типа t. Получив эту команду, система генерирует новый OID и заносит его в таблицу идентификатор OIDS вместе с идентификатором типа t. Затем, исходя из содержащегося в каталоге типов описания структуры объекта, система добавляет к базовым отношениям уровня хранения кортежи, предназначенные для хранимых компонентов нового объекта. При этом атрибут OID этих кортежей инициализируется объектным идентификатором создаваемого объекта. Далее, при необходимости, вызывается конструктор.



Содержание  Назад  Вперед