Boucle PL/SQL

Fermé
Jérôme G - 13 juin 2002 à 09:43
 Jérôme G - 13 juin 2002 à 17:05
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

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 Date d'inscription vendredi 7 juin 2002 Statut Membre Dernière intervention 5 mai 2005
13 juin 2002 à 16:52
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
Non, je ne sais pas faire en C++, mais éventuellement en java...
Désolé
0