Обращение к созданному генератору выполняется с помощью функции 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Обращение к созданному генератору выполняется с помощью функции



GEN_ID (<Имя генератора>, <Шаг>);

Эта функция возвращает значение, увеличенное на целочисленный шаг относи­тельно предыдущего значения генератора.

Замечание: После определения начального значения генератора изменять его нельзя. Также нельзя изменять шаг. Невыполнение этого правила приведет к тому, что генератор может повторно возвратить уже имеющееся значение со всеми вытекающими по­следствиями.

Пример создания генератора:

CREATE GENERATOR GenStore;

SET GENERATOR GenStore TO 1;

Здесь создается генератор GenStore, имеющий начальное значение 1. Пример обращения к этому генератору приведен в предыдущем разделе - GEN_ID'(GenStore, 1)

 

Использование, создание и изменение триггеров

Триггер представляет собой процедуру, которая находится на сервере БД и вызывается автоматически при модификации записей БД, т. е. при изменении столбцов или при их удалении и добавлении. В отличие от хранимых процедур, триггеры нельзя вызывать из приложения клиента, а также передавать им пара­метры и получать от них результаты.

Создание триггера выполняется инструкцией create trigger, имеющей формат:

CREATE TRIGGER <Имя триггера> FOR <Имя таблицы>

[ACTIVE I INACTIVE]

{BEFORE | AFTER}

{UPDATE I INSERT I DELETE}

[POSITION <Число>]

AS <Тело триггера>

Описатели active и inactive определяют активность триггера сразу после его создания. По умолчанию действует active, и созданный триггер активен, т. е. при наступлении соответствующего события будет выполняться.

Описатели before и after задают момент начала выполнения триггера до или после наступления соответствующего события, связанного с изменением записей.

Описатели update, insert и delete определяют, при наступлении какого со­бытия вызывается триггер — при редактировании, добавлении или удалении записей соответственно.

Созданный триггер можно удалить или изменить. Удаляется триггер инструкцией

DROP TRIGGER <Имя триггера>

Изменение триггера выполняется инструкцией alter trigger, формат которой не отличается от формата инструкции создания триггера. После выполнения инструкции alter trigger предыдущее описание триггера с указанным именем заменяется на новое.

Использование хранимых процедур

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

- вместо текста запроса, который может быть достаточно длинным, серверу передается по сети относительно короткое обращение к хранимой процедуре;

- хранимая процедура, в отличие от запроса, не требует предварительной син­таксической проверки.

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

Для выполнения процедуры, хранимой на сервере, в приложении используется компонент StoredProc.

Хранимая процедура создается инструкцией

CREATE PROCEDURE

<Имя процедуры> [(<Список входных параметров>)]

[RETURNS (<Список выходных параметров>)]

AS <Тело процедуры>

Созданную хранимую процедуру можно удалить или изменить. Удаляется про­цедура инструкцией

DROP PROCEDURE <Имя процедуры>

Изменение процедуры выполняется инструкцией alter procedure, имеющей такой же формат, как и инструкция create procedure. После выполнения инструкции alter procedure предыдущее описание хранимой процедуры с ука­занным именем заменяется на новое описание.

Виды хранимых процедур

По числу строк, возвращаемых в качестве результата, можно выделить следую­щие виды хранимых процедур:

- возвращающие одну строку;

- возвращающие несколько строк.

Процедуры, возвращающие одну строку, практически не отличаются от процедур языка Pascal и обеспечивают возврат значений выходных параметров. Такие хранимые процедуры также называют процедурами действия.

Процедуры, возвращающие несколько строк, передают набор данных, записями в котором являются строки результатов. Такие хранимые процедуры также на­зывают процедурами выбора. В их теле размещаются совместно используемые инструкции выбора нескольких записей и возврата значений — for select... do... suspend, которые и обеспечивают отбор требуемых записей и построч­ную передачу значений их столбцов в точку вызова.

 



Поделиться:


Последнее изменение этой страницы: 2017-01-25; просмотров: 96; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.19.56.45 (0.003 с.)