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

C++Builder Discussion :

Résultat d'une requette dans une variable


Sujet :

C++Builder

  1. #1
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut Résultat d'une requette dans une variable
    Bonjour,

    je cherche à récupérer le résultat d'une requette de selection avec regrouppement sur une table dans une bd access.
    SELECT Collecte.Localite
    FROM Collecte
    GROUP BY Collecte.Localite
    HAVING (((Collecte.Localite)<>""));
    donc je veux mettre dans une variable "S" le résultat de cette requette
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  2. #2
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut
    Salut !

    Et le composant TQuery, tu l'as essayé ?

    A+
    Plus tu prends part aux joies et chagrins des gens, plus ils te sont proches et chers. Mais c'est le chagrin et les problèmes qui vous rapprochent le plus.

    (Mark TWAIN)

  3. #3
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    merci,

    bien entendu, j'ai utilisé le composant TADOQuery, mais je trouve pas comment mettre ce résultat dans une varible string.
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  4. #4
    Membre averti Avatar de BOUBOU81
    Profil pro
    system integrator
    Inscrit en
    Juin 2004
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : Allemagne

    Informations professionnelles :
    Activité : system integrator

    Informations forums :
    Inscription : Juin 2004
    Messages : 358
    Points : 315
    Points
    315
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    AnsiString S=ADOQuery1->FieldByName("Localite
    ")->AsString;
    Tu as essayé ceci?
    Boubou from The SpAcE GaLaXy....
    AhAhAhAhAh

  5. #5
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut
    Sinon, voila comment accéder à tout les tuples, de ton resultat de la requête (du champs "Localite"):

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
     
    if(ADOQuery1->RecordCount>0)
            {
     
     
            ADOQuery1->FindFirst();
     
            for(int i=1;i<=ADOQuery1->RecordCount;i++)
                  {
     
                   ShowMessage(ADOQuery1->FieldByName("Localite")->AsString);
     
                   ADOQuery1->FindNext();
     
                   }
     
     
    }

    A+
    Plus tu prends part aux joies et chagrins des gens, plus ils te sont proches et chers. Mais c'est le chagrin et les problèmes qui vous rapprochent le plus.

    (Mark TWAIN)

  6. #6
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    merci encore,

    j'ai utilisé la version
    Interruption13h
    qui est du même principe de celle de
    BOUBOU81
    . ça marche, OK, mais,

    après execution de la requette j'ai eu par exemple 30 enregistrements, y a t'il un moyen de mettre tout ces élements en même temps dans une variable.

    merci.
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  7. #7
    Membre chevronné
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Points : 2 189
    Points
    2 189
    Par défaut
    J'utilise des vector avec STL (Standard Template Library) pour enregistrer mes résultats de DB.

    Pour plus d'info sur STL:
    http://www.sgi.com/tech/stl/stl_introduction.html

    sinon il y a aussi des listes chaînée:
    http://www.ann.jussieu.fr/courscpp/S...Sect06-D1.html
    • Plus un ordinateur possède de RAM, plus vite il peut générer un message d'erreur. - Dave Barry
    • Je n'ai pas peur des ordinateurs. J'ai peur qu'ils viennent à nous manquer. - Isaac Asimov
    • Le code source est comme une belle femme, plus on le regarde, plus on trouve des défauts. - Crayon

  8. #8
    Expert éminent sénior
    Avatar de Mat.M
    Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2006
    Messages
    8 361
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2006
    Messages : 8 361
    Points : 20 385
    Points
    20 385
    Par défaut
    Citation Envoyé par Crayon
    J'utilise des vector avec STL (Standard Template Library) pour enregistrer mes résultats de DB.
    Oui c'est une possibilité mais quitte à faire homogène autant prendre TList qui fait la même chose

  9. #9
    Membre éclairé
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Points : 786
    Points
    786
    Par défaut Tous ça en fonction :p
    Salut !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
     
     
    AnsiString MetMoiTousCaDansUneVariale_STP(TAdoQuery* AdoQuery)
    {
    AnsiString Resultat="";
     
    if(ADOQuery->RecordCount>0)
            {
            ADOQuery->FindFirst();
     
            for(int i=1;i<=ADOQuery->RecordCount;i++)
                    {
                    Resultat=Resultat+ADOQuery->FieldByName("Localite")->AsString)+"\n";
                    ADOQuery->FindNext();
                    }
            }
     
    return Resultat;
    }
    l'appel ce fait comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    //Execution de la requête
     
    //Puis :
    AnsiString MaVariable=MetMoiTousCaDansUneVariale_STP(ADOQuery1);
    Bonne continuation !
    Plus tu prends part aux joies et chagrins des gens, plus ils te sont proches et chers. Mais c'est le chagrin et les problèmes qui vous rapprochent le plus.

    (Mark TWAIN)

  10. #10
    Membre chevronné
    Avatar de Crayon
    Inscrit en
    Avril 2005
    Messages
    1 811
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 811
    Points : 2 189
    Points
    2 189
    Par défaut
    Citation Envoyé par Mat.M
    Oui c'est une possibilité mais quitte à faire homogène autant prendre TList qui fait la même chose
    SDL est bien mieux pour enregistrer des objets divers, car on a un accès direct aux méthodes et attributs de la classe. En plus la gestion de la mémoire est plus simple:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    std::vector<TDateTime> List;
     
    List.push_back( TDateTime(0,0,10,0) );
    List.push_back( TDateTime(0,0,11,0) );
    Pas besoin de savoir la quantité d'objet à insérer, il suffit de faire un push_back
    • Plus un ordinateur possède de RAM, plus vite il peut générer un message d'erreur. - Dave Barry
    • Je n'ai pas peur des ordinateurs. J'ai peur qu'ils viennent à nous manquer. - Isaac Asimov
    • Le code source est comme une belle femme, plus on le regarde, plus on trouve des défauts. - Crayon

  11. #11
    Membre averti Avatar de BOUBOU81
    Profil pro
    system integrator
    Inscrit en
    Juin 2004
    Messages
    358
    Détails du profil
    Informations personnelles :
    Localisation : Allemagne

    Informations professionnelles :
    Activité : system integrator

    Informations forums :
    Inscription : Juin 2004
    Messages : 358
    Points : 315
    Points
    315
    Par défaut
    Sinon tu peux faire comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    TStringList* Loc=new TStringList();
    ADOQuery1->First();
    while(!ADOQuery1->Eof)
    {
        Loc->Add(ADOQuery1->FieldByName("Localite")->AsString);
        ADOQuery1->Next();
    }
    Comme ça avec la TStringList tu pex faire des tries avec la méthode "sort"
    Mais bon à toi de choisir la méthode
    Boubou from The SpAcE GaLaXy....
    AhAhAhAhAh

  12. #12
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Merci à tous pour vos réponses.
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/07/2008, 11h32
  2. ouvrir une requette dans une tab dans internet explorer 7
    Par DjeinSlainteLand dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 11/06/2008, 17h06
  3. [POO] dans une classe, appeler une fonction dans une méthode
    Par arnaudperfect dans le forum Langage
    Réponses: 3
    Dernier message: 26/08/2007, 23h04
  4. Envoyer une formulaire dans une page dans une Frame
    Par zooffy dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 29/06/2007, 10h13
  5. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48

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