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

PostgreSQL:Kontrola NOVÉHO a STARÉHO ve funkci pro spouštěč

Obvyklý přístup k tomu, aby spouštěcí funkce dělala různé věci v závislosti na tom, jak byl spouštěč spuštěn, je zkontrolovat činnost spouště prostřednictvím TG_OP

CREATE OR REPLACE FUNCTION update_table_count()
RETURNS trigger AS
$$
DECLARE 
  updatecount INT;
BEGIN
  if tg_op = 'UPDATE' then 
    select count(*) into updatecount from source_table where id = new.id;
    update dest_table set count=updatecount where id = new.id;
  elsif tg_op = 'DELETE' then 
    ... do something else
  end if;
  RETURN NEW;
END;
$$
LANGUAGE plpgsql;

Nesouvisí, ale:název jazyka je identifikátor. Neuvádějte jej pomocí jednoduchých uvozovek.



  1. Jak extrahovat řádky z pole json pomocí mysql udf json_extract 0.4.0?

  2. PostgreSQL Logical Replication Gotchas

  3. Dotazování DAU/MAU v průběhu času (denně)

  4. StaleObjectStateException u vysokofrekvenčních aktualizací