Boucle PL/SQL

Jérôme G -  
 Jérôme G -
J'ai un problème lors de la création d'une fonction SQL. A chaque fois que j'essaie d'utiliser une boucle dans la fonction les exécutions me renvoient à chaque fois la valeur NULL.
Le but de cette fonction est de changer les suites de n espaces en un seul espace.
Ma fonction est la suivante :
CREATE OR REPLACE FUNCTION COMPRESS_SPACE ( chaine VARCHAR2 )
RETURN VARCHAR2
IS
comp_chaine VARCHAR2(2000);
BEGIN
DECLARE
test NUMBER;
BEGIN
comp_chaine := chaine;
IF chaine IS NOT NULL THEN
LOOP
SELECT 1
INTO test
FROM DUAL
WHERE comp_chaine LIKE '% %';
IF test IS NOT NULL THEN
SELECT REPLACE( comp_chaine , ' ' , ' ')
INTO comp_chaine
FROM DUAL;
ELSE
EXIT;
END IF;
END LOOP;
END IF;
END;
RETURN comp_chaine;
END COMPRESS_SPACE;

Si quelqu'un voit ce qui ne va pas, merci de me le signaler.
MERCI d'avance

2 réponses

Jay
 
Je pense que le problème vient de la sortie de la boucle mais je me renseigne pour plus d'info.
0
c55ayala Messages postés 21 Statut Membre
 
desole
peut etre tu serai faire une demande sql dans un langage de programmation(c++) pour la reutilise dans le programme

merci d'avance
0
Jérôme G
 
Non, je ne sais pas faire en C++, mais éventuellement en java...
Désolé
0