Разница между триггером и процедурой
Содержание
Триггер и процедура являются компонентом расширенного SQL. Триггер и Процедура выполняют заданную задачу при их выполнении. Принципиальная разница между триггером и процедурой заключается в том, что Курок выполняется автоматически при возникновении события, тогда как Процедура выполняется, когда он вызывается явно.
Давайте обсудим еще некоторые различия между триггером и процедурой с помощью сравнительной таблицы, показанной ниже.
- Сравнительная таблица
- Определение
- Ключевые отличия
- Вывод
Сравнительная таблица
Основа для сравнения | Триггеры | процедуры |
---|---|---|
основной | Они автоматически выполняются при наступлении указанного события. | Они могут быть выполнены при необходимости. |
призвание | Триггеры не могут быть вызваны внутри процедуры. | Но вы можете вызвать процедуру внутри триггера. |
параметр | Мы не можем передавать параметры триггерам. | Мы можем передать параметры процедурам. |
Возвращение | Триггер никогда не возвращает значение при исполнении. | Процедура может вернуть значение / с при исполнении. |
Определение триггера
Триггер подобен процедуре, которая выполняется автоматически при наступлении указанного события. Подобно процедуре, триггер не нужно вызывать явно. Триггеры создаются для выполнения некоторой задачи в ответ на возникновение определенного события.
Триггер может быть вызван в ответ на DDL операторы (DELETE, INSERT или UPDATE) или DML операторы (DELETE, INSERT или UPDATE) или для некоторых операций с базой данных (SERVERERROR, LOGON, LOGOFF, STARTUP или SHUTDOWN).
Триггер состоит из трех компонентов, как описано ниже:
- Мероприятие: Событие - это возникновение некоторого инцидента, который вызовет выполнение триггера. Триггер можно заказать, чтобы выполнить либо ДО происходит событие или может быть приказано выполнить ПОСЛЕ выполнение события.
- Состояние: Это необязательная часть триггера. Если не упомянуто, триггер будет выполняться по мере возникновения указанного события. Если условие указано, то он проверит правила, чтобы определить, должен ли триггер быть выполнен.
- действие: Действие - это набор операторов SQL, которые будут выполняться при выполнении триггера.
Общая форма создания события обсуждается ниже:
СОЗДАТЬ ТРИГГЕР Здесь условие необязательно. Процедуру можно принять за программный блок, созданный для выполнения какой-либо задачи, и он сохраняется в базе данных. Они вызываются оператором SQL всякий раз, когда это необходимо. Процедуры похожи на пользовательские функции, которые определяются разработчиками. Процедуры могут быть вызваны с помощью ВЫЗОВ или ВЫПОЛНИТЬ. Процедуры полезны в следующих ситуациях: Давайте обсудим общую форму создания процедуры: СОЗДАТЬ ПРОЦЕДУРУ Здесь параметры и локальные объявления являются необязательными. Они упоминаются только тогда, когда они необходимы. Нижеприведенное утверждение описывает вызов процедур. ВЫЗОВ Триггеры полезны, но их избегают, если существует какая-либо альтернатива им, поскольку это увеличивает сложность данных. Иногда триггеры также заменяются соответствующей процедурой.Определение процедур
Вывод: