Bonjour,
Bonjour à tous et merci d'avance à ceux qui prendront le temps de me répondre.
Voici mon problème, je développe actuellement un logiciel en C++ s'appuyant sur une Base de Données réalisée via MySQL. Pour la nouvelle fonctionnalité que je développe j'ai besoin d'implémenter une procédure dans ma Base de Données.
Voici donc une partie du Code que j'ai réalisé (en version simplifiée).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| DELIMITER |
CREATE PROCEDURE recuperer_defauts(IN p_pos_x DOUBLE, IN p_pos_y DOUBLE, IN p_pos_z DOUBLE, IN sens VARCHAR(10))
BEGIN
DECLARE IdxInf_x INT;
.
. (Multiples déclarations)
.
IF (sens = 'x')
SELECT ID_Xtheo INTO IdxInf_x FROM defx_xtheo WHERE Xtheo < p_pos_x ORDER BY Xtheo DESC LIMIT 1
.
. (Suite de la Procédure)
.
END IF;
.
. (Suite de la Procédure)
.
END|
DELIMITER ; |
Ce code est enregistré au bon endroit dans un fichier nommé "testProcedure.sql".
Je n'arrive pas à trouver mon erreur et pourtant lorsque je lance la commande
dans mon invite de commande je reçois le message d'erreur suivant :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT ID_Xtheo INTO IdxInf_x FROM defx_xtheo WHERE Xtheo < p_pos_x ORDER BY Xth' at line 74
Voila... Quelqu'un peut il m'ouvrir les yeux sur mon erreur de Syntaxe, je m'arrache les cheveux pour la trouver depuis hier, mais rien ne me vient...
Encore une fois merci d'avance à tout ceux qui prendront le temps de me répondre.
Cordialement,
Nergal
Partager