Message posté par : Nyldan
----------------------------------------
Bonjour,
je souhaiterais savoir si il est possible (mais j'ai un gros doute...) pour un trigger
de ne pas se déclencher à l'ajout ou à la suppression d'une colonne.
J'ai un fonction qui modifie la colonne date_maj avec celle du jour actuel et un
trigger qui le déclenche avant un insert ou un update. Mon souci est que quand une colonne
est ajoutée à ma table le trigger met à jour toutes les lignes de la base (ce qui est
normal). Il y a t-il un moyen de contourner celà?
Mes deux code:
-----------------
Code :
FUNCTION: schema.nom_fonction()
-- DROP FUNCTION IF EXISTS schema.nom_fonction();
CREATE OR REPLACE FUNCTION schema.nom_fonction()
RETURNS trigger
LANGUAGE 'plpgsql'
COST 100
VOLATILE NOT LEAKPROOF
AS $BODY$
BEGIN
new.date_maj := NOW();
RETURN NEW;
END
$BODY$;
ALTER FUNCTION schema.nom_fonction()
OWNER TO PUBLIC;
GRANT EXECUTE ON FUNCTION schema.nom_fonction() TO PUBLIC;
-------------------------------------------------------------------------------
-- Trigger: nom_trigger
-- DROP TRIGGER IF EXISTS nom_trigger ON schema.nom_table_ou_appliquer_trigger;
CREATE TRIGGER nom_trigger
BEFORE INSERT OR UPDATE
ON schema.nom_table_ou_appliquer_trigger
FOR EACH ROW
EXECUTE FUNCTION schema.nom_fonction();
-----------------
Merci pour vos retours
----------------------------------------
Le message est situé
https://georezo.net/forum/viewtopic.php?pid=360790#p360790
Pour y répondre : geobd(a)ml.georezo.net ou reply de votre messagerie
Pour vous désabonner connectez-vous sur le forum puis Profil / Abonnement
--
Association GeoRezo - le portail géomatique
https://georezo.net