IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

[C#]Comment stocker le résultat d'un "select" dans une variable ?


Sujet :

ASP.NET

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 64
    Points : 39
    Points
    39
    Par défaut [C#]Comment stocker le résultat d'un "select" dans une variable ?
    Salut,

    Dans mon application Web, je fais une requete "select" et je voudrais stocker le resultat dans une variable (ou tableau ) pour faire une boucle "for" sur ce resultat.

    Voila le code que j'utilise:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SqlCommand commandselect = new SqlCommand("select compteFTP from COMPTES", oConnection);
    SqlDataReader reader2 = commandselect.ExecuteReader();
    reader2.Read();
    string[] tabcptFTP = new string[reader];
    string varcmptFTP = reader2.GetString(0);
    for (int i = 0; i < reader2.GetInt32(); i++)
    {
        tabcptFTP[i] = reader2.GetString(i);
    }
    reader2.Close();
    Mais il me genere des erreurs.

    Si ça marche pas avec ce code, proposer moi un autre

  2. #2
    Membre régulier
    Inscrit en
    Octobre 2005
    Messages
    273
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 273
    Points : 118
    Points
    118
    Par défaut
    Quelles erreurs as- tu ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 64
    Points : 39
    Points
    39
    Par défaut
    voila mon nouveau code, je l'ai corrigé un peu:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SqlCommand commandselect = new SqlCommand("select compteFTP from COMPTES", oConnection);
    SqlDataReader reader2 = commandselect.ExecuteReader();
    reader2.Read();
    string[] tabcptFTP = new string[""];
    string varcmptFTP = reader2.GetString(0);
    for (int i = 0; i < varcmptFTP.Length; i++)
    {
        tabcptFTP[i] = reader2.GetString(i);
    }
    reader2.Close();
    avec l'erreur :
    Cannot implicitly convert type 'string' to 'int'
    à la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string[] tabcptFTP = new string[""];

  4. #4
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Je ne veux pas être méchant, mais il faudrait apprendre les bases d'un langage avant de vouloir développer, parce que j'ai l'impression que tu bidouilles plus qu'autre chose là.

    Il faudrait donc déjà que tu regardes comment on définit un tableau et surtout que tu regardes du côté des collections dynamiques (ArrayList en framework 1.0, List<T> en framework 2.0), car tu ne sais pas à l'avance combien de lignes tu récupères et un tableau de taille fixe ne te sera pas très utile.

    P.S. : j'ai édité ton premier post, regarde la raison du pourquoi et corrige tes messages en conséquence.
    Pas de questions techniques par MP

  5. #5
    Membre du Club Avatar de Agoye
    Inscrit en
    Décembre 2004
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 61
    Points : 68
    Points
    68
    Par défaut
    Citation Envoyé par prince_antonio
    voila mon nouveau code, je l'ai corrigé un peu:
    SqlCommand commandselect = new SqlCommand("select compteFTP from COMPTES", oConnection);
    SqlDataReader reader2 = commandselect.ExecuteReader();
    reader2.Read();
    string[] tabcptFTP = new string[""];
    string varcmptFTP = reader2.GetString(0);
    for (int i = 0; i < varcmptFTP.Length; i++)
    {
    tabcptFTP[i] = reader2.GetString(i);
    }
    reader2.Close();

    avec l'erreur : Cannot implicitly convert type 'string' to 'int' à la ligne
    string[] tabcptFTP = new string[""];

    Bonjour,
    il me semble que la déclaration est incorrecte
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     string[] tabcptFTP = new string[x];
    ou x représente la taille de ton tableau
    voilà

  6. #6
    Membre averti
    Avatar de CORBASE
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Points : 431
    Points
    431
    Par défaut
    Je suis d'accord avec storminOm, essaye de regarder les bases avant de t'aventurer dans des connexions ADO.

    Mais comme je suis de bonne foi, je te donne un bout de code corriger, mais essaye de chercher plus en profondeur les erreurs et les bases de la programmation sur MSDN ou autre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    SqlCommand commandselect = new SqlCommand("select compteFTP from COMPTES", oConnection);
    SqlDataReader reader2 = commandselect.ExecuteReader();
    ArrayList monResult = new ArrayList();
     
    while (reader2.Read())
    {
           monResult.Add(reader2["compteFTP"].ToString());
    }
    reader2.Close();

    Comme ça tu obtiens une liste de compteFTP dans une ArrayList, cependant oublie pas de convertir les résultat de ton ArrayList pour les lires.

    Par exemple pour lister l'intégralité de ton tableau :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    for (int i = 0; i < monResult.Count; i++)
          Response.Write("Compte N° " + i.ToString() + " : " + monResult[i].ToString());
    Voilà, j'espère que cela pourra t'aider ...
    Rien n'est impossible, c'est juste une question de temps
    C'est quoi le PureBasic ?

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 64
    Points : 39
    Points
    39
    Par défaut re
    Merci corbase pour ton explication qui est bien clair.
    c'est vari je ne suis pas expert en ado.net(d'ailleurs ce n'est pas le but de mon application). Mais je sui dans l'obligation de faire une ptite recherche dans ma base de données.
    Je vais essayer ton code.

  8. #8
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Citation Envoyé par StormimOn
    P.S. : j'ai édité ton premier post, regarde la raison du pourquoi et corrige tes messages en conséquence.
    Merci de prendre note des remarques qui vous sont faites. Donc ajoute les balises code sur ton second message.
    Pas de questions techniques par MP

  9. #9
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 64
    Points : 39
    Points
    39
    Par défaut rêp
    apparement ça marche avec le code de Corbase, mais comment je vais faire pour tester l'existence d'une variable de type string dans le tableau monResult[] qu'on a rempli avec les champs compteFTP.
    J'ai fais un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (varcptFTP.Text==monResult[i])
    Mais ça n'a pas marché biensur parce que impossible de comparer un objet avec un string.
    Quels sont vos suggestions??

  10. #10
    Membre averti
    Avatar de CORBASE
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Points : 431
    Points
    431
    Par défaut
    Bah, tu oublie simplement de caster ton ArrayList en string, cela doit être :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(varcptFTP.Text==monResult[i].ToString())
    PS: Les balises codes c'est avec des [ ] et non pas avec <> , clique sur le # dans l'éditeur et ça les placent automatiquement !
    Rien n'est impossible, c'est juste une question de temps
    C'est quoi le PureBasic ?

  11. #11
    Nouveau membre du Club
    Inscrit en
    Juin 2006
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 64
    Points : 39
    Points
    39
    Par défaut wééé
    Super grrrrrrrrrrrrrrrrrrr
    ça a marché. merci infiniment Corbase
    en fait j'ai essaiyé ToString mais san parentheses
    Merci

  12. #12
    Membre averti
    Avatar de CORBASE
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 246
    Points : 431
    Points
    431
    Par défaut
    Clique sur résolu alors
    Rien n'est impossible, c'est juste une question de temps
    C'est quoi le PureBasic ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 07/05/2014, 18h27
  2. [MySQL] Comment stocker les résultats d'un enregistrement dans des variables?
    Par Alexandrebox dans le forum PHP & Base de données
    Réponses: 26
    Dernier message: 30/07/2010, 21h23
  3. Réponses: 5
    Dernier message: 15/04/2010, 15h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo