Bonjour à toutes et à tous,
je suis en train de créer un trigger sur MySql 5. Le but Effectuer un test sur la ligne à inséerer. Si le différence entre @send et @lastoken est < 300, de faire un update sur la ligne à insérer.
J'obtiens comme erreur : #1415 - Not allowed to return a result set from a trigger
Et voici le code
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
23
24
25
26
27
28
29
30 DELIMITER $$ CREATE TRIGGER addToken BEFORE INSERT ON sessionend FOR EACH ROW BEGIN DECLARE send INT; DECLARE lastoken INT; IF( NEW.token != "" ) THEN SET send =0; SET lastoken =0; SELECT @send = timestamp FROM sessionend WHERE token = 'sessionEnded'; SELECT @lastoken = timestamp FROM sessionend ORDER BY timestamp DESC LIMIT 1 ; IF( ( @send - @lastoken ) <300 ) THEN UPDATE sessionend SET NEW.token = 'continue' WHERE token = 'sessionEnded'; END IF ; END IF ; END $$
Partager