|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 26 ![]() |
Bonjour, j'ai un souci dans le retour du résultat de ma fonction.
Voici le code de ma fonction. Celle-ci à en paramètre d'entrée une chaîne de caractère et retourne en sortie la position du séparateur trouvé. Lorsque j'éxecute les premières lignes en mode requête. pas de problèmes. Le Select me renvoi bien les bon résultat. J'ai l'impression que c'est mon curseur qui plante. Merci d'avance à ceux qui pourront dénicher l'erreur. Bonne journée à tous. Code :
|
||
|
|
00
|
|
|
#2 |
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 26 ![]() |
c'est bon j'ai trouvé. C'est juste un problème de déclaration de variable.
Ma variable pos interagissait avec le champ pos de la table temporaire. |
|
|
00
|
|
|
#3 |
|
Membre Expert
![]() Yannick Ingénieur Etudes & Developpements Inscription : février 2006 Messages : 1 125 ![]() |
Cependant, quel est l'interet de votre curseur dans votre script ?
__________________
Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac) |
|
|
00
|
|
|
#4 |
|
Membre Expert
![]() Eric DureuilDéveloppeur informatique Inscription : avril 2011 Messages : 856 ![]() |
salut,
oui je me pose aussi la question vu que tu lis une seule ligne... autan faire un simple: Code sql :
SELECT MIN(pos),MAX(pos) INTO pos,posMax FROM posi WHERE pos>0; plus optimisé...
__________________
Eric Dureuil, développeur web, c/c++, java indépendant soyons ![]() pensez à mettre et
|
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 26 ![]() |
oui j'ai pensé à rectifier mon légèrement mon code.
j'ai cette requête qui me retourne la position minimale en dehors des 0 et j'ai une seconde requête (max sans condition >0) qui me retourne la position maximale. Si la position maximale est 0 alors je n'ai aucun des éléments recherché. Pourquoi j'ai mis le curseur ? tout simplement que je suis pas très doué en mySQL et que je n'arrive pas à affecter le résultat à ma variable pour la renvoyer.(mySQL5.0) J'ai toujours un message d'erreur me disant que je n'ai pas la bonne syntaxe ![]() Code :
SET maVariable = SELECT blabla FROM truc Merci à vous ! |
|
|
00
|
|
|
#6 | ||
|
Membre Expert
![]() Yannick Ingénieur Etudes & Developpements Inscription : février 2006 Messages : 1 125 ![]() |
Parce que comme vous l'analyseur, votre syntaxe est incorrecte !
Code :
Bon Courage
__________________
Dans la connaissance du monde, ceux qui ne savent rien en savent toujours autant que ceux qui n'en savent pas plus qu'eux. (Pierre Dac) |
||
|
|
00
|
|
|
#7 |
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 26 ![]() |
merci à vous, j'étais entrain de lire la syntaxe sur la doc mysql. et oui, l'analyseur chez moi est un peu ko
![]() un grand merci à vous ! et moi je vais prendre un peu plus de temps pour creuser ces procédures stockées et la syntaxe sous mysql.(genre passage de paramètre in/out, passage de paramètre dans un curseur, etc.) |
|
|
00
|
|
|
#8 |
|
Membre Expert
![]() Eric DureuilDéveloppeur informatique Inscription : avril 2011 Messages : 856 ![]() |
pour faire simple:
select into ne dois te retourner qu'une ligne... le curseur servira lui quand tu en auras possiblement plusieurs et tu devras faire une boucle de lecture... souvent, si tu as un traitement lourd ou très répétitif, vaut mieux une procédure stockée que de faire un select avec une fonction utilisateur (udf) dedans... en plus tu pourras faire plus de choses dedans... bon courage
__________________
Eric Dureuil, développeur web, c/c++, java indépendant soyons ![]() pensez à mettre et
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com