Léxico de TI › Bancos de dados › Gatilho (trigger) de banco de dados

Gatilho (trigger) de banco de dados

Bancos de dados Svenska → Atualizado: 2026-10-01

Procedimento do banco que roda automaticamente em INSERT/UPDATE/DELETE. Níveis BEFORE/AFTER e ROW/STATEMENT. Usos: logs de auditoria (quem mudou o quê), desnormalização, colunas derivadas, regras de negócio.

PostgreSQL: o trigger chama uma função (PL/pgSQL, PL/Python etc.). MySQL: corpo do trigger escrito inline. Contrapartidas: triggers escondem lógica — "por que essa coluna muda?" → não está no código da aplicação, é preciso garimpar o schema do banco. Desempenho: triggers pesados deixam UPDATEs simples lentos. Alternativa moderna: CDC + handler no lado da aplicação, para desacoplar. Antipadrão clássico: um trigger que chama outro UPDATE que dispara outro trigger → explosão recursiva. Boa prática atual: evitar triggers para lógica de negócio; para trilhas de auditoria, tudo bem.

← Voltar ao léxico