DEV Community

Cover image for O que são triggers?
Brayan Cavalcanti
Brayan Cavalcanti

Posted on

1 1

O que são triggers?

Se você já estudou ou trabalhou com gerenciamento de banco de dados, certamente você já deve ter ouvido falar sobre triggers.

Mas afinal, o que são? O que comem? Onde vivem?

Image description

Bom, segundo o google, os triggers são:" Um recurso de programação executado sempre que o evento associado ocorrer. Trigger é um tipo especial de procedimento armazenado, que é executado sempre que há uma tentativa de modificar os dados de uma tabela que é protegida por ele."

Agora que já sabemos a definição, vamos a um exemplo?

Image description

Abaixo a sintaxe de um trigger:

CREATE TRIGGER [Nome] 

    ON [Nome_da_tabela] 

    AFTER/BEFORE {[Operação-gatilho]} 

    AS 

    {lógica de comandos}

Enter fullscreen mode Exit fullscreen mode

Um exemplo funcional:

CREATE OR REPLACE TRIGGER update_modification_date
BEFORE UPDATE ON employees
FOR EACH ROW
BEGIN
    :NEW.last_modified := SYSDATE;
END;

Enter fullscreen mode Exit fullscreen mode

O trigger acima foi feito para atualizar uma coluna chamada "last_modified" na tabela com o nome "employees" atualizando sua data e hora sempre que acontecerem novos updates nessa tabela, assim todas as atualizações são rastreáveis .

Abaixo uma tabela de principais vantagens e desvantagens do uso dessa funcionalidade:

Image description

Um exemplo prático de uso de triggers seria em um sistema de supermercado, onde os preços são constantemente atualizados, sempre que um preço de um item for alterado, o trigger será chamado para atualizar o valor deste item na tabela de preços de um supermercado.

Sobre triggers seria isso pessoal, até uma próxima!

Image description

AWS Q Developer image

Your AI Code Assistant

Automate your code reviews. Catch bugs before your coworkers. Fix security issues in your code. Built to handle large projects, Amazon Q Developer works alongside you from idea to production code.

Get started free in your IDE

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay