Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1046 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  PLSQL : nom de variable ... variable

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

PLSQL : nom de variable ... variable

n°132604
tomwy
Posté le 30-04-2002 à 11:21:28  profilanswer
 

Voila, dans mon SELECT il y a 20 champs qui sont nommés nb1,nb2...nb20. Je dois faire des traitements dessus. J'aimerais bien pouvoir utiliser une boucle du genre :
FOR cpt IN 1..20 LOOP
 recupererLeChamp('nb' || cpt) ... traitement
END LOOP;
 
Le probleme c que je ne sais pas comment recuperer les champs en concatenant nb avec cpt.
 
Est ce possible ?
Merci.

mood
Publicité
Posté le 30-04-2002 à 11:21:28  profilanswer
 

n°132629
dpmy
Posté le 30-04-2002 à 11:57:25  profilanswer
 

tomwy a écrit a écrit :

Voila, dans mon SELECT il y a 20 champs qui sont nommés nb1,nb2...nb20. Je dois faire des traitements dessus. J'aimerais bien pouvoir utiliser une boucle du genre :
FOR cpt IN 1..20 LOOP
 recupererLeChamp('nb' || cpt) ... traitement
END LOOP;
 
Le probleme c que je ne sais pas comment recuperer les champs en concatenant nb avec cpt.
 
Est ce possible ?
Merci.  




 
pour une concatenation resultat='nb'+'cpt'
 c'est ça que tu veux ?

n°132630
goueg
De passage
Posté le 30-04-2002 à 12:00:21  profilanswer
 

ouah impressionant! ;)
check tes privates...


---------------
(Feed-Back HFR) - Funky Tonight!
n°132631
dpmy
Posté le 30-04-2002 à 12:01:06  profilanswer
 

ben rien n'a change !

n°132637
goueg
De passage
Posté le 30-04-2002 à 12:04:07  profilanswer
 

argh c ché moa ke ca merde completement en fait :sweat:


---------------
(Feed-Back HFR) - Funky Tonight!
n°132638
dpmy
Posté le 30-04-2002 à 12:05:19  profilanswer
 

hum... désolés tomwy... on sort de ton topic...  :D

n°132639
dpmy
Posté le 30-04-2002 à 12:05:55  profilanswer
 

dpmy a écrit a écrit :

hum... désolés tomwy... on ne pourrit pas ton topic, on sort tt de suite !...  :D  



n°132641
tomwy
Posté le 30-04-2002 à 12:06:51  profilanswer
 

J'suis pas en javascript la  ;)  
PLSQL
Ce que je veux c un nom de variable qui soit variable.
Je veux pouvoir appeler une serie de variables nb1,nb2...nb20
en creant leur nom dans une boucle de 1 a 20.

n°132643
dpmy
Posté le 30-04-2002 à 12:08:04  profilanswer
 

mais ça se fait aussi en plsql ce que je t'ai dit ?!  :heink:

 

[jfdsdjhfuetppo]--Message édité par dpmy le 30-04-2002 à 12:08:33--[/jfdsdjhfuetppo]

n°132650
tomwy
Posté le 30-04-2002 à 12:20:32  profilanswer
 

ouais mais la concatenation c'est 'nb'||cpt.
Mais ca j'ai deja essayé et ca compile pas.
Ca marche chez toi ?
Il doit y avoir une fonction mais laquelle ?

mood
Publicité
Posté le 30-04-2002 à 12:20:32  profilanswer
 

n°132652
dpmy
Posté le 30-04-2002 à 12:22:01  profilanswer
 

non pour afficher c'est 'nb'||cpt
mais pour concatener ds une variable c 'nb' + 'cpt'

n°132657
tomwy
Posté le 30-04-2002 à 12:43:31  profilanswer
 

c un truc de ce genre ce dont tu me parles ? :
 
declare
 c1 VARCHAR2(10):='bobby';
 c2 VARCHAR2(10):=' et ';
 c3 VARCHAR2(10):=' jimmy ';
cpt NUMBER;
begin
FOR cpt IN 1..3 LOOP
 MESSAGE('c'+cpt);
END LOOP;
end;
 
ca compile mais ca leve une exception...

n°132661
dpmy
Posté le 30-04-2002 à 12:46:43  profilanswer
 

mais MESSAGE, c'est une fonction que tu  as créé ?
Si oui, tu peux la montrer ?
Si non, elle consiste à faire koi EXACTEMENT ?

n°132662
tomwy
Posté le 30-04-2002 à 12:50:10  profilanswer
 

message c une fonction de Oracle Forms. Elle sert juste a afficher un message dans la barre des taches ou en pop up.
Est ce que tu vois ce que je veux faire ? recuperer le contenu de c1 , c2 et c3 dans une boucle.

n°132663
tomwy
Posté le 30-04-2002 à 12:52:37  profilanswer
 

si tu veux voila un autre exemple sans message. ( La ca compile quedal)
 
declare
 c1 VARCHAR2(10):='bobby';
 c2 VARCHAR2(10):=' et ';
 c3 VARCHAR2(10):=' jimmy ';
cpt NUMBER;
temp1 VARCHAR2(10);
temp2 VARCHAR2(10);
temp3 VARCHAR2(10);
begin
FOR cpt IN 1..3 LOOP
 'temp'+cpt:='c'+'cpt';);
END LOOP;
end;

n°132664
tomwy
Posté le 30-04-2002 à 12:54:07  profilanswer
 

'temp'+cpt:='c'+'cpt';);
 Meme sans la parenthese a droite :D

n°132665
dpmy
Posté le 30-04-2002 à 12:54:22  profilanswer
 

oui il me semble avoir compris mais est-ce que tu ne peux pas plutot faire  
 
declare
res VARCHAR2(15);
c1 VARCHAR2(10):='bobby';
c2 VARCHAR2(10):=' et ';
c3 VARCHAR2(10):=' jimmy ';
cpt NUMBER;
begin
FOR cpt IN 1..3 LOOP
res:='c'+'cpt';
MESSAGE(res);
END LOOP;
end;

n°132667
tomwy
Posté le 30-04-2002 à 13:00:25  profilanswer
 

Ca compile mais ca declanche toujours une exception : ORA-06502
 :heink:

n°132668
dpmy
Posté le 30-04-2002 à 13:02:03  profilanswer
 

en fait j dit une betise
essaye peut-etre
 
res:=concat(c,cpt);

n°132670
dpmy
Posté le 30-04-2002 à 13:03:43  profilanswer
 

bon je teste de mon cote. Préviens qd même si t'arrives à trouver avant !  ;)

n°132671
tomwy
Posté le 30-04-2002 à 13:04:26  profilanswer
 

Ok ca ca marche mais le probleme c qu'apres quand j'affiche res il me donne 'c1' , 'c2' puis 'c3' ce qui est logique alors que moi je voudrais les valeurs de c1 , c2 et c3.

n°132672
dpmy
Posté le 30-04-2002 à 13:06:22  profilanswer
 

vi vi j bien compris...  :D

n°132673
tomwy
Posté le 30-04-2002 à 13:09:48  profilanswer
 

cool  :D  
Bon je vais me chercher un sandwitch et je m'y remets dans 10 minutes.

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  PLSQL : nom de variable ... variable

 

Sujets relatifs
[PHP] variable predefinie $_POST['ma_variable'] et fonction mail()porte d'une variable en Javascript
PLSQL : equivalent de indexof[Delphi] Comment déclarer une variable globale ?
PLSQL : Generation de requete HELPComment créer une variable d'environnement au niveau system sous NT ?
[VB] Probléme de variableINSERT une heure dans une variable de type DATE ?
[HTML+PHP] Passage de variable dans un formulaire[Resolut][HTML] Variable dans la balise <title>
Plus de sujets relatifs à : PLSQL : nom de variable ... variable


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR