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 :

Probleme d'acces aux données lors d'une de jointure


Sujet :

Bases de données Delphi

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2003
    Messages : 115
    Points : 60
    Points
    60
    Par défaut Probleme d'acces aux données lors d'une de jointure
    Bonjour
    J'ai fait une jointure entre deux tables qui ont les mêmes noms de champ
    si je fais
    ADOQuery2.FieldByName('member_num').AsString
    j'accede au champs de la table members1 mais si je fais
    ADOQuery2.FieldByName('members.member_num').AsString
    pour accéder a la table au champs member_num de la table members alors j'ai un message d'erreur

    Comment fait t'on pour acceder aux champs de chacune des tables lorsque celles-ci ont des noms de champ identiques

    Voici le code

    ADOQuery2.SQL.Text:='SELECT * FROM `MEMBERS` INNER JOIN `Members1` ON `members`.`num`=`members1`.`num`';
    ADOQuery2.Active:=True;
    while not ADOQuery2.Eof do
    begin
    if ADOQuery2.FieldByName('members.member_num').AsString='' then
    begin
    ref[K]:=ADOQuery2.FieldByName('members1.member_num').AsString;
    inc[K];
    end;
    ADOQuery2.Next ;
    end;

    Merci

  2. #2
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    vu que tu fais un "select *", je pense qu'il t'a renommé les champs de la table members1 en : Nom du champ + 1.
    Pour éviter ce problème il faut que tu indiques la liste complète des champs dans ton select et que tu les cast comme tu le souhaites.

    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Select m.Num, m1.Num as M1Num from  FROM `MEMBERS`as m INNER JOIN `Members1` as m1 ON m.`num`=m1.`num`';
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Août 2003
    Messages
    115
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2003
    Messages : 115
    Points : 60
    Points
    60
    Par défaut
    Merci

    Ca marche, je n'avait pas encore vu l'utilité de AS

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

Discussions similaires

  1. [Mondrian] Probleme d'accés aux données
    Par GGGGG dans le forum Mondrian
    Réponses: 4
    Dernier message: 27/03/2008, 13h06
  2. Probleme d'acces aux données, erreurs aléatoires
    Par ~Brouette~ dans le forum Requêtes
    Réponses: 0
    Dernier message: 10/10/2007, 15h46
  3. Accès aux données contenues dans une Iframe
    Par Jérémy Lefevre dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 03/10/2007, 11h24
  4. Réponses: 6
    Dernier message: 30/07/2007, 15h48
  5. Probleme d'acces aux données d'un JTable
    Par oOoOuuhmAn dans le forum Composants
    Réponses: 3
    Dernier message: 07/05/2006, 12h54

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