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 :

Requête SQL incorrecte sur DELPHI : champ non trouvé


Sujet :

Bases de données Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2010
    Messages : 59
    Par défaut Requête SQL incorrecte sur DELPHI : champ non trouvé
    Bonjour !

    J'ai un petit problème avec mon programme..
    Je m'explique.

    J'ai un DataBase lié à une base nommée "Gestion"
    J'ai un TTable lié à une table nommée "Services", elle même liée à mon DataBase
    J'ai un DataSource lié à mon TTable

    Sur un TDBLookupListBox, j'affiche tous les enregistrements du champ "LibelleService" de mon TTable

    ListSource : DS_Services
    ListField : LibelleService
    KeyField : idService

    Sur l'évènement OnClick d'un simple bouton, j'aimerais que l'enregistrement sélectionné sur TDBLookupListBox soit reporté sur un listBox simple.

    Pour cela, j'ai écris une requête SQL qui récupère toutes les informations de ce qui a été sélectionné.
    Requête qui fonctionne sur PhpMyAdmin mais qui ne fonctionne pas sur DELPHI.

    Voici mon petit bout de code (J'ai remplacé le listbox par des labels) :

    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
    procedure Tpage_facturation.requete(Id_Service : string);
    begin
     QueryRecupInfos.SQL.Clear;
     QueryRecupInfos.SQL.Add('SELECT LibelleService, PrixService FROM services WHERE idService = :id');
     QueryRecupInfos.ParamByName('id').value := Id_Service;
     Libelle_service := QueryRecupInfos.FieldbyName('LibelleService').AsString;
     Prix_Service := QueryRecupInfos.FieldByName('PrixService').AsInteger;
     QueryRecupInfos.Open;
    end;
     
    procedure Tpage_facturation.BtInsererClick(Sender: TObject);
    begin
       Id_Service := DBLookupservices.keyValue; // Je récupère l'id
       requete(Id_Service); // J'exécute la requête
       Label2.Caption := Libelle_service;
       Label3.Caption := IntToStr(Prix_Service);
    end;
    L'erreur que j'ai est :

    QueryRecupInfos: Champ 'LibelleService' non trouvé.
    Évidemment, mon premier réflexe a été de vérifier sur ma base de données.
    Mais la requête est fonctionnelle sur SQL.

    Cela fait plusieurs heures que je suis dessus...C'est peut-être un petit truc tout bête, mais je ne parviens pas à trouver.

    Si quelqu'un peut m'éclairer, merci d'avance !

  2. #2
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2007
    Messages
    3 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 530
    Par défaut
    est-ce qu'il ne faudrait pas faire le

    QueryRecupInfos.Open;

    avant la lecture des valeurs par

    Libelle_service := QueryRecupInfos.FieldbyName('LibelleService').AsString;

    ??

  3. #3
    Membre averti
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2010
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2010
    Messages : 59
    Par défaut
    Ah punaise !

    Merci !
    J'ai honte de ma bêtise, là !

    Merci beaucoup papy214..
    Je savais que c'était un truc bête

    Voici donc le petit bout de code corrigé et qui fonctionne.

    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
    procedure Tpage_facturation.requete(Id_Service : string);
    begin
     QueryRecupInfos.SQL.Clear;
     QueryRecupInfos.SQL.Add('SELECT LibelleService, PrixService FROM services WHERE idService = :id');
     QueryRecupInfos.ParamByName('id').value := Id_Service;
     QueryRecupInfos.Open;
     Libelle_service := QueryRecupInfos.FieldbyName('LibelleService').AsString;
     Prix_Service := QueryRecupInfos.FieldByName('PrixService').AsInteger;
     
    end;
     
    procedure Tpage_facturation.BtInsererClick(Sender: TObject);
    begin
       Id_Service := DBLookupservices.keyValue;
       requete(Id_Service);
       Label2.Caption := Libelle_service;
       Label3.Caption := IntToStr(Prix_Service);
    end;

  4. #4
    Membre Expert

    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2007
    Messages
    3 530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 530
    Par défaut
    Citation Envoyé par MélanieS Voir le message
    Ah punaise !

    Merci !
    J'ai honte de ma bêtise, là !

    Merci beaucoup papy214..
    Je savais que c'était un truc bête
    Faut pas avoir honte, on est tous passés par là.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/03/2014, 23h42
  2. Requête SQL : Jointure sur 3 tables - Bd Access 1997 & Delphi 7
    Par Didier100 dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/12/2007, 09h57
  3. [MS-SQL] Champ non trouvé
    Par rdoudou dans le forum Bases de données
    Réponses: 3
    Dernier message: 13/08/2007, 18h05
  4. [SQL] dictinct sur plusieurs champs
    Par lapartdombre dans le forum Langage SQL
    Réponses: 3
    Dernier message: 16/11/2005, 15h11
  5. Réponses: 8
    Dernier message: 23/10/2003, 16h22

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