"Criando um gatilho " consiste em duas etapas no PostgreSQL:
1.) Crie uma função de gatilho - com valor de retorno especial
trigger
:CREATE FUNCTION trg_update_prod_price()
RETURNS trigger AS
$func$
BEGIN
NEW.price := NEW.price + 5;
RETURN NEW;
END
$func$ LANGUAGE plpgsql;
Vários gatilhos podem usar a mesma função de gatilho.
2.) Crie um gatilho chamando uma função de gatilho existente:
CREATE TRIGGER update_prod_price
BEFORE INSERT ON products
FOR EACH ROW EXECUTE PROCEDURE trg_update_prod_price();
Para "soltar o gatilho" (significando a função de gatilho ), você deve primeiro descartar todos os gatilhos que fazem referência a ele e, em seguida, descartar a própria função de gatilho.
DROP TRIGGER update_prod_price ON products;
DROP FUNCTION trg_update_prod_price();
Se você descartar uma tabela, todos os gatilhos anexados serão descartados com ela. Não há necessidade de soltá-los separadamente.