J'ai une petite table (~ 10 lignes) appelée restrictions
dans ma base de données PostgreSQL, où les valeurs sont supprimées et insérées quotidiennement.
Je voudrais avoir un tableau appelé restrictions_deleted
, où chaque ligne supprimée restrictions
sera stockée automatiquement. Puisqu'il restrictions
a un identifiant de série, il n'y aura pas de doublons.
Comment écrire un tel déclencheur dans PostgreSQL?
postgresql
trigger
delete
plpgsql
Adam Matan
la source
la source
VALUES((OLD).*)
create function
besoins doivent être appelés avantcreate trigger
. Et l'VALUES((OLD).*)
astuce suggérée par KayEss est sympa.Si vous êtes ouvert à une approche différente, avez-vous envisagé d'ajouter un indicateur booléen «supprimé» à la table ou un horodatage «supprimé_à la place».
Ou mieux encore, refusez l'accès CRUD à vos tables de base de données et gérez la piste d'audit dans votre API transactionnelle :)
la source