Bonjour,j'ai beaucoup de misère avec cette fonction. Je tente d'afficher un message d'erreur losrque le NOW() ne se trouve pas entre la dateDePrise et la dateDePrise + INTERVAL '1 day'.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 CREATE OR REPLACE FUNCTION mesureInterval_lim() RETURNS TRIGGER AS $$ BEGIN IF NOT EXISTS ( SELECT * FROM MesureInterval JOIN Processus USING (idMesure) WHERE (Processus.idProcessus = 'PROC001' AND now() <= mesureinterval.dateDePrise + INTERVAL '1 day') OR (Processus.idProcessus = 'PROC002' AND now() <= mesureinterval.dateDePrise + INTERVAL '1 day') ) THEN RETURN NEW; ELSE RAISE EXCEPTION 'Veuillez passer à la prochaine étape'; RETURN NULL; END IF; END; $$ LANGUAGE plpgsql;
Partager