"Een trigger maken " bestaat uit twee stappen in PostgreSQL:
1.) Maak een triggerfunctie
- met speciale retourwaarde trigger
:
CREATE FUNCTION trg_update_prod_price()
RETURNS trigger AS
$func$
BEGIN
NEW.price := NEW.price + 5;
RETURN NEW;
END
$func$ LANGUAGE plpgsql;
Meerdere triggers kunnen dezelfde triggerfunctie gebruiken.
2.) Maak een trigger een bestaande triggerfunctie aanroepen:
CREATE TRIGGER update_prod_price
BEFORE INSERT ON products
FOR EACH ROW EXECUTE PROCEDURE trg_update_prod_price();
Om "de trigger te laten vallen" (d.w.z. de triggerfunctie ), moet u eerst alle triggers die ernaar verwijzen verwijderen en vervolgens de triggerfunctie zelf laten vallen.
DROP TRIGGER update_prod_price ON products;
DROP FUNCTION trg_update_prod_price();
Als je een tafel laat vallen, vallen alle gekoppelde triggers mee. U hoeft deze niet apart te laten vallen.