Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Postgres: trigger, automation, integrity, logging

Что такое триггеры (Triggers) в PostgreSQL?

Этот вопрос проверяет знание триггеров и их роли в автоматизации действий при изменении данных.

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

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

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

Триггеры — это механизм PostgreSQL для автоматического выполнения действий при определенных событиях, связанных с таблицами. Триггер может срабатывать до или после события (BEFORE или AFTER), а также для каждой строки (FOR EACH ROW) или для всего запроса (FOR EACH STATEMENT).

 

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

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

CREATE FUNCTION log_changes() RETURNS trigger AS $$
BEGIN
    INSERT INTO log_table(action, table_name, changed_data)
    VALUES (TG_OP, TG_TABLE_NAME, row_to_json(NEW));
    RETURN NEW;
END;
$$ LANGUAGE plpgsql;

- Создаем сам триггер:

CREATE TRIGGER after_update_trigger
AFTER UPDATE ON employees
FOR EACH ROW
EXECUTE FUNCTION log_changes();

 

Применение:

- Автоматизация проверки целостности данных.

- Логирование изменений.

- Выполнение сложных действий на уровне базы данных.

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    5

Навыки

  • Postgres

    Postgres

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

#trigger

#automation

#integrity

#logging

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

  • Аватар

    Golang Guru

    Maxim Lukyanov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.