sql >> Databáze >  >> RDS >> PostgreSQL

Jak používat spouštěče PostgreSQL?

"Vytvoření spouštěče “ se skládá ze dvou kroků v PostgreSQL:

1.) Vytvořte spouštěcí funkci - se speciální návratovou hodnotou trigger :

CREATE FUNCTION trg_update_prod_price()
  RETURNS trigger AS
$func$
BEGIN
   NEW.price := NEW.price + 5;
   RETURN NEW;
END
$func$  LANGUAGE plpgsql;

Více spouštěčů může používat stejnou funkci spouštění.

2.) Vytvořte spouštěč volání existující spouštěcí funkce:

CREATE TRIGGER update_prod_price
BEFORE INSERT ON products
FOR EACH ROW EXECUTE PROCEDURE trg_update_prod_price();

Chcete-li „spustit spoušť“ (což znamená spouštěcí funkci ), musíte nejprve zahodit všechny spouštěče, které na něj odkazují, a poté zahodit samotnou funkci spouštění.

DROP TRIGGER update_prod_price ON products;
DROP FUNCTION trg_update_prod_price();

Pokud upustíte stůl, všechny připojené spouštěče jsou zrušeny s ním. Není třeba je pouštět samostatně.



  1. SQL Server – zamyká [SELECT] [AKTUALIZACE]?

  2. Existuje na serveru SQL nějaká funkce lineární regrese?

  3. SQL Query Join v CodeIgniter

  4. Může někdo pomoci vysvětlit, proč je nepoužívání SQL JOIN špatným postupem?