Dans MySQL, nous pouvons l'exécuter où il met à jour la colonne changetimestamp
chaque fois que la ligne est modifiée:
create table ab (
id int,
changetimestamp timestamp
NOT NULL
default CURRENT_TIMESTAMP
on update CURRENT_TIMESTAMP
);
Existe-t-il quelque chose de similaire pour faire ce qui précède dans PostgreSQL?
Créez une fonction qui met à jour la colonne changetimestamp d'une table comme ceci:
CREATE OR REPLACE FUNCTION update_changetimestamp_column()
RETURNS TRIGGER AS $$
BEGIN
NEW.changetimestamp = now();
RETURN NEW;
END;
$$ language 'plpgsql';
Créez un déclencheur sur la table qui appelle la fonction update_changetimestamp_column () chaque fois qu'une mise à jour se produit comme suit:
CREATE TRIGGER update_ab_changetimestamp BEFORE UPDATE
ON ab FOR EACH ROW EXECUTE PROCEDURE
update_changetimestamp_column();