Bonjour,
Je souhaiterais effectuer une gestion avancée des erreurs dans mes procédures stockées et récupérer au moins mon numéro d'erreur en dynamique .
J'ai essayé le code ci-dessous, mais il ne me renvoi rien (numerr=vide) en code d'erreur.
Quelqu'un pourrait il m'aider, svp ?
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
31
32
33
34
35
36
37 DECLARE ERR BOOL DEFAULT false; DECLARE CONTINUE HANDLER FOR SQLEXCEPTION,SQLWARNING BEGIN IF @SQLEXCEPTION =0 THEN SET numerr := @SQLWARNING; ELSE SET numerr := @SQLEXCEPTION; END IF; SET messerr := 'SQL Error...'; SET ERR = true; END; SET numerr := 0; SET messerr := ''; IF (_T) THEN SET AUTOCOMMIT=0; START TRANSACTION; END IF; -- ###################################################### INSERT INTO table ( champ1, champ2) VALUES (_chp1, _chp2); SELECT LAST_INSERT_ID() INTO id_table_ ; ###################################################### -- IF (_T) THEN IF (ERR) THEN SELECT -1, numerr, messerr; ROLLBACK; ELSE SELECT id_table_ , 0, ''; COMMIT; END IF; END IF;
d'avance merci.
Filouxera
Partager