Concaténer nom de variable

Résolu
cs_brute Messages postés 135 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 11 mai 2007 - 28 sept. 2006 à 11:19
cs_brute Messages postés 135 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 11 mai 2007 - 28 sept. 2006 à 14:12
Bonjour,


Je cherche a concaténer des noms de variables.  je m'explique.


J'ai 2 table A et B et une table C entre A et B , la table C contient les clé des deux autres table (idA et idB)


Dans mon application, je fais un select sur la table A qui me renvoie plusieurs enregistrement dans un datagrid que j'affiche.


Le focus est sur la premiere ligne, je recupere la valeur idA

Ensuite, je fais un deuxieme select sur la table C avec idA , ce qui me
renvoie 0 ou plusieurs enregistrements, je le met dans un dataset et
apres

je fais un select sur la table B avec une clause Where idB = val1 OR val2 OR val3 et j'affiche les résultats.


J'arrive a le faire pour un enregistrement mais j'aimerais l'automatiser , pour X enregistrement.

Je n'arrive pas a concaténer des noms de variables . ..


Merci de me transmettre si vous avez une idée car la . .  .

5 réponses

cs_brute Messages postés 135 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 11 mai 2007 1
28 sept. 2006 à 14:12
Ca y est c'est résolu,


En fait je fais une premiere requete SELECT, et je compte le nombre de résultat .

Si ce nombre est > 0 alors je déclare une requete comme suit :

int n1=0;

int n2=this.dataset.tableInter.count ;

if (n2>0)

{

String uQuery "SELECT * FROM MATABLE WHERE ID '"+this.dataSet.MATABLEINTERMEDIAIRE[n1].ID + "'" ;

    While (n1<n2)

    {

       uQuery uQuery + " OR ID " + this.dataSet.MATABLEINTERMEDIAIRE[n1].ID ;

       n1++

    }

voila . . . et apres j'utilise un dataAdapter

this.oracleDATAAdapter.SelectCommand.commandText = uQuery;

puis apres j'utilise la methode Fill du dataAdapter pour remplir le DataSet.

Puis apres j'affiche les resultats du DataSet dans le DataGrid.


Voila.
3
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
28 sept. 2006 à 11:39
ce que je fais moi :

je crée un tableau contenant ma liste de valeur... ensuite je fais string.Join(" OR ", monTableau)

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0
cs_brute Messages postés 135 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 11 mai 2007 1
28 sept. 2006 à 11:47
je comprend pas exactement ta méthode, string.join("OR",montableau) ? ?

j'ai déja un tableau , en fait c'est mon dataset, qui contient deux
colonnes , l'une des colonnes represente la valeur que j'ai récup lors
du focus sur la ligne du premier datagrid et la deuxieme colonne
correspond aux valeurs que je veux récupérer afin de les mettre dans ma
clause where pour afficher la deuxieme table .


O final je dois avoir une requete SELECT avec une clause WHERE id = val1 OR val2 OR val3 ;


val1 val2 val3 correspond aux enregistrements retournés dans ma table intermédiaire .
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 37
28 sept. 2006 à 11:51
oui justement...

tu stockes dans un tableau la liste des codes que tu as sélectionné est tu fais ceci :

"SELECT ... FROM ... WHERE ID in ('" + string.Join("','", monTableauDeCodes) + "')"

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_brute Messages postés 135 Date d'inscription mercredi 8 novembre 2000 Statut Membre Dernière intervention 11 mai 2007 1
28 sept. 2006 à 11:56
ok merci seb , dans ce cas comment faire un tableau ??

car mes valeurs sont dans un dataset , je peux les récupérer en faisant :

string val = this.dataSet.maTABLE[n1].ID;

mais sinon je vois pas
0
Rejoignez-nous