comment récupérer l'erreur sql?
bonjour,
J'ai un petit soucis sur une procédure sous MySQL, je voudrait
récupérer le message d'erreur si il y a un problème lors d'une
exécution de requête. Actuellement j'arrive bien lancer ma
procédure et sortir de ma procédure si j'ai un soucis mais pas
à récupérer le code d'erreur
exemple du code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| CREATE PROCEDURE SP_PRO
(
IN v_req,
OUT i_ret
)
BEGIN
DECLARE EXIT HANDLER FOR SQLEXCEPTION,SQLWARNING,NOT FOUND
BEGIN
set i_ret=-2;
ROLLBACK;
END;
START TRANSACTION;
//traitement de la procédure
//execute une requete
COMMIT;
END; |
donc quand je fait le call de ma procédure j'ai pas d'erreur
et si j'enleve le handler je recupere un message d'erreur
j'ai vu qu'on pouvais afficher l'erreur sous le shell du mysql
en faisant 'show errors'
mais je voudrait maintenant pouvoir récupérer l'erreur dans
ma procédure
Il y a une table spécial ou est stocker l'erreur de la dernière requete
ou je pourrai l'appeler dans ma procédure?