Триггер Оракула

Введение

Триггер — это хранимая процедура в базе данных, которая вызывается автоматически всякий раз, когда в базе данных происходит определенное событие. Например, триггер может запускаться при вводе строки в таблицу или когда триггер — это хранимая процедура в базе данных, которая вызывается автоматически. всякий раз, когда в столбцах базы данных этой таблицы происходит определенное событие, они изменяются.

Что такое триггер Oracle

Триггеры Oracle — это просто фрагменты кода PL/SQL, которые сохраняются в базе данных Oracle и могут быть повторно использованы и переназначены в любое время, когда это потребуется пользователю. Это могут использовать как коды DDL (язык определения данных), так и DML (язык манипулирования данными). Параметры, разрешенные в триггерах, разделены на четыре категории: «имя триггера» для именования триггера, «время триггера» для указания времени запуска события, «событие триггера» для указания типа события и «имя таблицы» для указание имени таблицы, для которой создается и используется триггер.

Синтаксис триггера

CREATE [OR REPLACE] TRIGGER имя_триггера время_триггера событие_триггера ON имя_таблицы [ ДЛЯ КАЖДОЙ СТРОКИ] Объявление ----- Объявления переменных BEGIN ---- тело триггера EXCEPTION ---- код обработки исключений END;

 

параметры

имя триггера: При создании триггера это имя, которое мы хотим ему дать.

время запуска: Это указывает, будет ли событие инициировано ДО или ПОСЛЕ срабатывания триггера.

триггерное событие: Это указывает, является ли событие INSERT, DELETE или UPDATE.

имя таблицы: Имя таблицы, на которой построен триггер.

Типы триггеров Oracle

Ниже приведены типы триггеров Oracle:

Oracle ДО триггера

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

Давайте возьмем пример, чтобы понять это

В этом примере мы рассмотрим триггер, который будет установлен до того, как мы выполним действие вставки в рабочую таблицу.

СОЗДАЙТЕ ИЛИ ЗАМЕНИТЕ ТРИГГЕР before_insert_employee ПЕРЕД ВСТАВКОЙ НА сотрудника ДЛЯ КАЖДОЙ СТРОКИ НАЧАЛО ВСТАВИТЬ В ЗНАЧЕНИЯ АВТОМОБИЛЯ («VH0111», «Мустанг», «100», «Канпур»); КОНЕЦ;

 

Oracle ПОСЛЕ триггера

В этом случае триггер будет активирован после выполнения оператора INSERT.

В этом примере мы рассмотрим триггер, который будет активирован после действия вставки в таблицу сотрудников. Для лучшего понимания взгляните на код ниже.

СОЗДАТЬ ИЛИ ЗАМЕНИТЬ ТРИГГЕР after_insert_employee_details ПОСЛЕ ВСТАВКИ НА сотрудников ДЛЯ КАЖДОЙ СТРОКИ НАЧАТЬ ВСТАВИТЬ В ЗНАЧЕНИЯ ТРАНСПОРТНОГО СРЕДСТВА (: new.vehicle_no, : new.vehicle_name, : new.sale, : new.country); КОНЕЦ;

В предыдущем примере триггер назначается таблице сотрудников и срабатывает всякий раз, когда в таблице сотрудников выполняется действие вставки. Если операция вставки в таблицу сотрудников выполнена успешно, этот триггер неявно вызывается для обновления таблицы car новыми значениями.

 

Триггер Oracle DROP

Как следует из названия, мы рассмотрим, как удалить триггер, который уже был создан и размещен в базе данных, на примере. Мы удалим триггер после удаления в примере ниже.

Давайте начнем с синтаксис.

DROP TRIGGER TRIGGER_NAME;

Пример:
УДАЛИТЬ ТРИГГЕР after_delete_employee;

 

Триггер отключения Oracle

В целях тестирования и отладки вы можете отключить триггер.

Синтаксис:

ALTER TRIGGER имя_триггера DISABLE;

Это критически важно для анализа и выбора наиболее эффективных ключевых слов для улучшения рейтинга вашего сайта.

ALTER TRIGGER after_delete_employee ОТКЛЮЧИТЬ;

 

Триггер Oracle ENABLE

Оператор ALTER TRIGGER ENABLE используется для включения ранее отключенного триггера.

Синтаксис

ALTER TRIGGER имя_триггера ENABLE;

Пример

ALTER TRIGGER after_delete_employee ENABLE;

Автор


Комментарии

Оставьте комментарий

Ваш электронный адрес не будет опубликован. Обязательные поля помечены * *

Этот сайт использует Akismet для уменьшения количества спама. Узнайте, как обрабатываются ваши данные комментариев.