Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад

Как работает триггер на INSERT?

Вопрос проверяет понимание механизма срабатывания триггеров на событие INSERT в SQL.

Короткий ответ

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

Длинный ответ

Как работает триггер на INSERT

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

Механизм срабатывания

Триггер может срабатывать до (BEFORE) или после (AFTER) выполнения операции INSERT. В большинстве СУБД (например, PostgreSQL, MySQL) триггеры поддерживают доступ к новой строке через специальные псевдонимы (NEW). Это позволяет читать или изменять вставляемые данные до их фиксации.

Пример кода

CREATE TRIGGER log_insert
AFTER INSERT ON users
FOR EACH ROW
BEGIN
  INSERT INTO audit_log(user_id, action, timestamp)
  VALUES (NEW.id, 'INSERT', NOW());
END;

В этом примере после вставки строки в таблицу users триггер автоматически добавляет запись в таблицу audit_log с идентификатором нового пользователя, действием и временем.

Применение

  • Аудит изменений данных
  • Валидация бизнес-правил
  • Автоматическое обновление агрегированных данных
  • Синхронизация между таблицами

Вывод: триггеры на INSERT полезны для автоматизации задач, связанных с добавлением данных, и помогают поддерживать целостность базы данных без вмешательства в прикладной код.

Уровень

  • Рейтинг:

    4

  • Сложность:

    4

Навыки

  • SQL

Ключевые слова

#SQL trigger

#INSERT

#event-driven

#database

Подпишись на Java Developer в телеграм