sql >> Database teknologi >  >> RDS >> PostgreSQL

Forebyg rekursiv trigger i PostgreSQL

Dette er, hvad jeg gør i PostgreSQL 9.2, selvom jeg må indrømme, at jeg ikke fandt denne tilgang dokumenteret. Der er en funktion pg_trigger_depth() dokumenteret her, som jeg bruger til at skelne mellem originale og indlejrede kald i triggeren.

CREATE TRIGGER trg_taxonomic_positions
AFTER INSERT OR UPDATE OF taxonomic_position
ON taxon_concepts
FOR EACH ROW
WHEN (pg_trigger_depth() = 0)
EXECUTE PROCEDURE trg_taxonomic_positions()


  1. RETNING:MySQL – VÆLG kommando nægtet bruger

  2. Sådan kombinerer du resultaterne af to forespørgsler i SQL

  3. MariaDB LOCALTIMESTAMP() Forklaret

  4. SQL Server-tabeller:hvad er forskellen mellem @, # og ##?