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

 Delphi Discussion :

Jointure de deux tables


Sujet :

Delphi

  1. #1
    Membre régulier Avatar de souminet
    Inscrit en
    Novembre 2006
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 351
    Points : 111
    Points
    111
    Par défaut Jointure de deux tables
    Bonjour,
    Voilà, je dispose de 02 tables Paradox: Catégories.dbf et Sous_Catégories.dbf

    Catégories(N_Cat, Désignation)
    Sous_Catégories(N_SCAT, N_CAt, DésignationS)

    sur une fiche j'ai utilisé 02 DBGRID, chacun pour afficher les enregistrements des 02 tables!!
    En utilisant la jointure par programmation(A l'aide des proporiétés MAsterSource et masterfield) la jointure est opérationnelle mais mon problème est que g besoin d'afficher touts les enregistrements de la table Sous_CAtégories dans une autre fiche mais il ne m'affiche que les enregistrements correspondants à l'enregistrement sur lequel le ppinteur est positionné dans l'autre fiche...

    En résumé, je voudrais appliquer une jointure sur une fiche, et libérer les 02 tables ailleurs!!!

    Merci++++++++++



    Je voudrais

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Si tu veux vraiment faire ça alors tu dois désactiver le MasterSource lorsque tu es sur la fiche 2 et le réactiver lorsque tu es sur la fiche 1. Mais je ne te cacherais pas que c'est très lourd. Le mieux serait peut-être de faire des query et que chaque fiche travaille sur des DataSet séparés.
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  3. #3
    Membre régulier Avatar de souminet
    Inscrit en
    Novembre 2006
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 351
    Points : 111
    Points
    111
    Par défaut
    Si tu veux vraiment faire ça alors tu dois désactiver le MasterSource lorsque tu es sur la fiche 2 et le réactiver lorsque tu es sur la fiche 1. Mais je ne te cacherais pas que c'est très lourd. Le mieux serait peut-être de faire des query et que chaque fiche travaille sur des DataSet séparés.
    Oui je suis plutot pour les query!!

  4. #4
    Membre régulier Avatar de souminet
    Inscrit en
    Novembre 2006
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 351
    Points : 111
    Points
    111
    Par défaut
    Je viens d'essayer avec un Query mais rien ne s'affiche,
    Voilà ce que j'ai fais:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    procedure TFStock.AvecDetailClick(Sender: TObject);
    begin
    Sdetail.Checked:=false;
    AvecDetail.Checked:=true;
    PanPicture.Visible:=false;
    PanLiv.Visible:=true;
    Datamodule2.QJoinLiv.Close;
    Datamodule2.QJoinLiv.SQL.Clear;
    Datamodule2.QJoinLiv.SQL.ADD('SELECT Date_Livraison, Ref_Interne, Designation, Qte_Livree, Fournisseur, Code_Ctr  FROM "ARTICLES.DB", "LIVRAISON.DB"');
    Datamodule2.QJoinLiv.SQL.ADD('WHERE Ref_Interne=Ref_Interne');
    Datamodule2.QJoinLiv.Active:=true;
    end;
    Mais lorsque je clique sur le RadioButton :AvecDetail rien ne saffiche dans le DBGRID relatif aux enregistrements de la table LIVRAISON et qui devraient correspondre à l'enregistrement affiché dans le DBGRID1 (ARTICLES)

    Comment faire pour réussier cette opération avec un QUery

    Merci

  5. #5
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Euh je ne comprend plus rien du tout, au début on parlait de table catégorie et sous-catégories et maintenant on parle de articles et livraison.

    Réexplique exactement ce que tu veux faire et les interactions entre les composants/tables.
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

  6. #6
    Membre régulier Avatar de souminet
    Inscrit en
    Novembre 2006
    Messages
    351
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 351
    Points : 111
    Points
    111
    Par défaut
    Citation Envoyé par Aka Guymelef Voir le message
    Euh je ne comprend plus rien du tout, au début on parlait de table catégorie et sous-catégories et maintenant on parle de articles et livraison.

    Réexplique exactement ce que tu veux faire et les interactions entre les composants/tables.
    Désolée, c'est que j'ai recopié la partie code concernat les 02 tables ARTICLES et LIVRAISON, pour lesquels le meêm problème se pose!!!

    En fait , simplement je cherche une solution pour remplacer la technique de jointure à travers le MasterSource et le MAsterfield , en utilisant des Query mais ayant exactement les mêmes résultats.
    en d'autres termes une solution alternative au MAsterSource

    Merci++++++

  7. #7
    Membre chevronné

    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    1 519
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 519
    Points : 2 153
    Points
    2 153
    Billets dans le blog
    1
    Par défaut
    Et bien dans ce cas avec un Query tu peux utiliser la syntaxe du INNER JOIN (ou LEFT JOIN suivant les besoins) pour jointer deux tables et renvoyer les résultats fusionnés en un seul jeu d'enregistrement.

    Maintenant je ne sais pas si c'est réellement ça que tu veux faire...
    La FAQ - les Tutoriels - Le guide du développeur Delphi devant un problème

    Pas de sollicitations techniques par MP -

Discussions similaires

  1. jointure entre deux tables mysql
    Par Invité dans le forum SQL Procédural
    Réponses: 7
    Dernier message: 23/04/2006, 20h08
  2. jointure de deux tables de deux bases de données!
    Par JauB dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 04/01/2006, 11h05
  3. [MySQL] Jointure entre deux tables
    Par Flushovsky dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 03/10/2005, 18h55
  4. PROBLEME DE JOINTURE ENTRE DEUX TABLE
    Par DarkMax dans le forum Langage SQL
    Réponses: 13
    Dernier message: 13/01/2005, 15h11
  5. Jointure entre deux tables et résultat
    Par Asdorve dans le forum Langage SQL
    Réponses: 2
    Dernier message: 02/06/2004, 14h50

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