Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение в СУБД HyTech.doc
Скачиваний:
11
Добавлен:
01.03.2025
Размер:
2.67 Mб
Скачать

Удаление внешнего источника данных

Для удаления источника данных используется SQL-оператор drop datasource.

Формат:

drop datasource Имя_источника [ cascade | restrict ];

Аргументы:

Аргумент

Значение

Имя_источника

Задает имя внешнего источника данных. Источник данных с указанным именем должен быть создан оператором create datasource.

cascade

Если задано ключевое слово cascade, то при удалении источника данных удалятся и все объекты, использующие этот источник данных. В данной реализации таких объектов нет.

restrict

Если указано ключевое слово restrict и есть объекты, которые используют удаляемый источник, то операция завершится с ошибкой.

Пример: Удалить источник данных dsoracle со всеми объектами.

drop datasource dsoracle cascade;

3.6 Операторы для работы с генераторами Операторы create generator, set generator

Генератор – механизм создания уникальных последовательных номеров, которые можно использовать в качестве внутрисистемных идентификаторов объектов, хранящихся в базе данных. Генератор – глобальный объект базы данных, доступный любому пользователю, причем гарантируется, что операция чтения и изменения значения генератора атомарная с точки зрения пользователя

Оператор create generator создает генератор.

Формат:

create generator Имя_генератора;

Аргументы:

Аргумент

Значение

Имя_генератора

Задает имя генератора. Имя генератора должно содержать латинские буквы и цифры, должно начинаться с буквы и должно быть не длиннее 31 символа. Имена генераторов должны быть уникальными и не должны совпадать с зарезервированными словами.

Пример: Создать генератор с именем genREADER.

create generator genREADER;

После создания генератора требуется установить значение генератора.

Установленное значение доступно всем пользователям. Допустимый диапазон значений генератора от -231 до 231-1.

Формат:

set generator Имя_генератора to Выражение;

Аргументы:

Аргумент

Значение

Выражение

Выражение, значение которого будет присвоено генератору.

Имя_генератора

Имя генератора, значение которого изменяется.

Пример: Установить значение 1 генератору genREADER.

set generator genREADER to 1;

Операторы gen_id, drop generator

Использование генератора состоит в чтении значения генератора и изменении этого значения на заданную величину. Для этого применяется специальная функция gen_id.

Функция gen_id получает значение указанного генератора и изменяет его значение. Причем, гарантируется, что функция выполняется как атомарная операция. Никакой другой пользователь не может «вклиниться» между чтением значения генератора и его изменением.

Формат:

rc = gen_id ( Имя_генератора, Приращение ) ;

Аргументы:

Аргумент

Тип

Значение

Имя_генератора

character

Аргумент задает имя генератора. Генератор с указанным именем должен быть создан оператором create generator. Если генератор не существует, то возвращается 0.

Приращение

integer

Выражение, которое задает величину приращения значения генератора.

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

var @no = gen_id('Reader_ID', 1);

то это вызовет ошибку «[-64] Неправильный операнд. Около <Built-in gen_id>» .

SQL оператор drop generator удаляет существующий генератор. Удаляемый генератор задается своим именем.