Salut à tou(te)s,

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
DELIMITER $$
 
CREATE TRIGGER RNA BEFORE UPDATE ON myTable 
FOR EACH ROW
BEGIN
    IF NEW.myvalue >16383 THEN
    SET NEW.myvalue =0;
    END IF;
END 
$$;
 
DELIMITER ;
Voici le bout de code qui me pose problème.
C'est pourtant un simple trigger. J'ai l'impression que le trigger n'arrive pas à évaluer le NEW.myvalue ... c'est étonnant.
Quand je me base sur les OLD.myvalue là j'arrive à obtenir un effet...

Il s'agit s'implement de remettre à zero le champ myvalue lorsque j'atteinds une limite sup de 16383 ...

le trigger intervient lors de requetes UPDATE sur cette table dont le but est simplement d'incrémenter myvalue.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
UPDATE myTable SET myvalue = myvalue + 1;
Des idées ?

Merci d'avance.