banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Wed 23 June 2021 10:39

Lucile16
Juste Inscrit !
Date d'inscription: 23 Jun 2021
Messages: 2

Trigger avec sélection

Bonjour,

l'objectif est de mettre à jour automatiquement le champ 'date_valid' uniquement lorsque le champ 'validite' = valide.

BEGIN
NEW.date_valid = CURRENT_TIMESTAMP
from bd_adresse.adresse_agglo
where adresse_agglo.validite = 'valide';
RETURN NEW;
END;

Je ne reçois aucun message d'erreur dans la syntaxe mais le champ 'date_valid' ne se met pas à jour lors de l'enregistrement.
Pouvez-vous m'orienter vers une autre syntaxe ou démarche ?

Hors ligne

 

#2 Fri 30 July 2021 18:09

tweaxy
Participant actif
Lieu: Abbeville
Date d'inscription: 27 Dec 2018
Messages: 76

Re: Trigger avec sélection

Bonsoir
,
Tout d'abord, il manque la condition IF NEW.validite = 'valide' :

Vous souhaitez faire ça sur toute la totalité des objets de votre table ou uniquement à partir d'une sélection d'objets ? Si uniquement à partir d'une sélection d'objets, comment les avez vous sélectionné ?

A quel moment faire cela ?
Une fois uniquement, ou est-ce lier à un trigger apres/avant/ insertion/update ?

Cordialement,
Léandre

Hors ligne

 

#3 Mon 02 August 2021 09:02

Ben22
Participant actif
Lieu: 33
Date d'inscription: 11 May 2016
Messages: 96

Re: Trigger avec sélection

Bonjour,


Comme vous le conseille tweaxy, essayez plutôt cette écriture :

Code:

$$
BEGIN

IF NEW.validite = 'valide' THEN
    NEW.date_valid = CURRENT_DATE;
END IF;

RETURN NEW;
END;
$$

Dernière modification par Ben22 (Mon 02 August 2021 09:04)

Hors ligne

 

Pied de page des forums

Powered by FluxBB