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

Bases de données Delphi Discussion :

Recupérer un agrégat


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club
    Inscrit en
    Octobre 2003
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 75
    Points : 53
    Points
    53
    Par défaut Recupérer un agrégat
    Bonjour,
    j'essaye de faire une requete pour recupérer un agrégat de count et somme
    j'utilise le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    nbr : integer;
    total : extended;
    .
    .
    .
    Query2.SQL.Clear;
     Query2.SQL.Add('Select count(*) as :param1, sum(autorisation) as :param2 ');
     Query2.SQL.Add('from ma_table');
     Query2.ExecSql;
     nbr := Query2.Params[0].AsInteger;
     total :=Query2.Params[1].AsFloat;
    je reçoit le message d'erreur "Query2 : le champ 'param1' est d'un type inconnu".
    je suis bloqué ,
    merci de votre aide !

  2. #2
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Il ne faut pas confondre Paramètres (Params) et Champs (Fields).

    Tu peux réssayer avec ce code:
    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
     
    var
      nbr : integer;
      total : extended;
    begin.
      //...
      with Query2 do
      begin
        SQL.Clear;
        SQL.Add('Select count(*) as NbEnreg, sum(autorisation) as SumAutoris');
        SQL.Add('from ma_table');
        Open;  // au lieu d'ExecSQL: c'est une requête Select
        nbr := FieldByName('NbEnreg').AsInteger;
        total := FieldByName('SumAutoris').AsFloat;
        Close;
      end;
      //...
    end;
    @+ Claudius

  3. #3
    Membre du Club
    Inscrit en
    Octobre 2003
    Messages
    75
    Détails du profil
    Informations forums :
    Inscription : Octobre 2003
    Messages : 75
    Points : 53
    Points
    53
    Par défaut
    Bonjour,
    Ton code fonctionne parfaitement ;
    merci beaucoup pour ta précieuse aide !

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

Discussions similaires

  1. [Indy TCPClient] Recupérer le données reçues
    Par fandor7 dans le forum Web & réseau
    Réponses: 8
    Dernier message: 29/06/2003, 21h52
  2. [Winsock] Envoi et recupération d'une image
    Par arnolanf dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 29/11/2002, 08h49
  3. recupèrer file d'attente d'impression
    Par magic corp. dans le forum Langage
    Réponses: 2
    Dernier message: 25/09/2002, 14h12
  4. Création d'agrégat avec SQLServer
    Par Testav dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 19/09/2002, 16h54
  5. comment puis-je recupérer l'extesion du fichier?
    Par mirella dans le forum Langage
    Réponses: 7
    Dernier message: 14/08/2002, 15h56

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