Précédent   Forum des professionnels en informatique > Bases de données > Oracle
Oracle Forum Oracle : le serveur, les outils, ... Voir F.A.Q Oracle Tutoriels Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/04/2007, 13h41   #1
Membre à l'essai
 
Inscription : décembre 2005
Messages : 112
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 112
Points : 23
Points : 23
Par défaut Exécution Concat_all = impossible

Bonjour,

Mon projet en cours est effectué sur une base oracle 10g.

Et je veux qu'une colonne d'une de mes tables soient mises sous la forme d'un unique VARCHAR2 séparé par des '|'.

Dans ce projet est déjà utilisé une fonction appelée concat_all qui a l'air d'être un peu connu sous le web qui fait exactement ce traitement.

Seulement voilà quand je teste sous TOAD la requête ça marche mais quand je l'intègre à mon package que je développe sous PL/SQL developper ça ne marche plus.

Pourquoi?

PS: si vous volez que je fournisse le code dites le moi mais comme ça fait une tartine et que je pense que c'est plus dû à de la config je ne le mets pas tout de suite.
gigigao est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/04/2007, 13h56   #2
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 450
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 450
Points : 4 209
Points : 4 209
Ca ne marche pas ?
Etant "Membre du Club", tu abuses un peu de ne pas donner l'erreur.
Sinon on peut rien faire.
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/04/2007, 14h24   #3
Membre à l'essai
 
Inscription : décembre 2005
Messages : 112
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 112
Points : 23
Points : 23
En fait c'était pas trop l'erreur Oracle qui me dérangeait.
C'était plus où se configure le compilateur PL/SQL developer et Toad aisin que les autres options.
Désolé pour mon message vague
Pour m'excuser un petit peu Je suis nouveau dans le forum ORACLE ainsi que dans oracle

Bon alors pour le problème j'ai réussi à le faire marcher mais ça me dérange.

DAns le détail :
ma requête :
dans toad
Code :
1
2
3
4
SELECT Concat_All(DISTINCT concat_expr (trim(CALL_CLASS), '|'))
FROM BUNDLE_COMBI
WHERE ATG = 'YOPPI' 
AND VALID_FROM_DATE = '02-MAY-00'
ok tout marche
dans pl/SQL developper :
Code :
1
2
3
4
SELECT Concat_All(DISTINCT concat_expr (trim(CALL_CLASS), '|')) INTO CALL_CLASS_LIST
          FROM BUNDLE_COMBI
          WHERE ATG = PC$ATG_CODE 
          AND VALID_FROM_DATE = PD$FROM_DATE;
dans ce cas là ORA-30482: DISTINCT option not allowed pour this function

Là solution que j'utilise et qui a réglé le problème mais sans l'explicité
l'utilisation de sort_string qui trie et supprime les doublons
Code :
1
2
3
4
 SELECT sort_string(Concat_All(concat_expr (trim(CALL_CLASS), '|')),'|')  INTO CALL_CLASS_LIST
 FROM BUNDLE_COMBI
WHERE ATG = PC$ATG_CODE 
AND VALID_FROM_DATE = PD$FROM_DATE;
Encore une fois désolé pour le précédent message mais j'ai pas encore tous automatismes de développement Oracle.
gigigao est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h58.


 
 
 
 
Partenaires

Hébergement Web