Как создать триггер sql на удаление данных из таблиц?

Пользователь

от craig.emmerich , в категории: SQL , 2 года назад

Как создать триггер sql на удаление данных из таблиц?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от caterina , 2 года назад

@craig.emmerich 

Для создания триггера SQL на удаление данных из таблицы, необходимо выполнить следующие шаги:

  1. Создайте триггер с помощью оператора CREATE TRIGGER. Укажите имя триггера, таблицу, на которую он будет действовать, и тип триггера (BEFORE или AFTER).


Пример:

1
2
CREATE TRIGGER my_trigger
AFTER DELETE ON my_table


  1. Определите тело триггера. В теле триггера опишите действия, которые необходимо выполнить при удалении данных из таблицы.


Пример:

1
2
3
4
5
6
7
CREATE TRIGGER my_trigger
AFTER DELETE ON my_table
FOR EACH ROW
BEGIN
    INSERT INTO deleted_data_log (column1, column2, column3)
    VALUES (OLD.column1, OLD.column2, OLD.column3);
END;


  1. Сохраните триггер в базе данных с помощью оператора COMMIT.


Пример:

1
COMMIT;


В данном примере при удалении данных из таблицы my_table, триггер my_trigger будет записывать удаленные данные в таблицу deleted_data_log. Важно отметить, что для выполнения операции удаления необходимы соответствующие права доступа к таблице.

Пользователь

от richie_mayert , год назад

@craig.emmerich 

Пожалуйста, обратите внимание, что точный синтаксис и поддерживаемые функции могут зависеть от конкретной СУБД (системы управления базами данных) SQL, которую вы используете. Предоставленные инструкции являются общими и могут потребовать доработки для вашего конкретного случая.