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

Modélisation Discussion :

Lier 2 Bases de données


Sujet :

Modélisation

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Novembre 2016
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Novembre 2016
    Messages : 13
    Points : 7
    Points
    7
    Par défaut Lier 2 Bases de données
    Bonjour à tous.

    Je suis actuellement entrain de développer sous Access une base de données permetant le suivi complet d'un dossier. (Base A)
    Parallèlement, je dispose d'une seconde base de données qui géré de son coté les non conformités des dossiers. (Base B)

    Chacune de ces bases de données dispose d'un champ identique : "REFERENCE" (mais qui n'est pas la clé primaire) et j'aimerais que dans un formulaire de la base A apparaissent certaines données de la base B en relation avec l'enregistrement sélectionnée dans la base A.

    Si j'ai réussi à lier la base B avec la base A (apparait dans la liste des objets avec une petite flèche), je ne parvient pas à faire la relation entre les 2.

    Est ce quelqu'un pourrait m'aider ?

    Par avance merci

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Bonjour.

    Juste quelques points de vocabulaire avant de commencer afin que mes explications soient claires.

    Quand on parle de base, on parle du fichier Access (.mdb ou .accdb généralement).
    Chaque base peut contenir des tables, des requêtes, des états, des formulaire, du code.

    Je pense que quand tu parles de 2 bases qui contiennent un champ "REFERENCE", tu fais référence à 2 tables qui sont contenues dans 2 bases différentes.

    On peut établir une relation entre de 2 tables en allant dans la fenêtre des relations de la base A.
    Attention, tu ne peux pas établir une relation d'intégrité avec des tables situées dans 2 bases différentes.
    Tu peux juste établir une relation ordinaire qui fait que si un élément est manquant à un bout ou l'autre de la relation Access ne dira absolument rien.

    Et il me semble que ta vraie question porte sur comment faire une jointure entre tes 2 tables.
    C'est très simple, pour Access, une table locale (dans la base courante) ou une table liée (dans une autre base) est utilisable de la même façon.
    Donc, tu ouvres l'éditeur de requête et tu choisis les tables dont tu as besoin et tu définis les jointures par glisser/déplacer des champs d'une table à l'autre.

    En espérant que mes déductions étaient bonnes et que cela répond à ta question.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Novembre 2016
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Novembre 2016
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    Je te remercie pour ta réponse.

    Pour te répondre à mon tour :
    Quand je parles de base, je parle effectivement du fichier Access.
    Donc dans ma configuration, je dispose de 2 fichiers access ayant chacun une table de données. (La base A contient la table 1 et la base B contient la table 2)

    Les Tables 1 et 2 contiennent toute les 2 un champ "REFERENCE" donc tu avais bien déduit.

    Ne maitrisant pas trop encore le vocabulaire (mais j'apprends vite), je ne sais pas s'il s'agit de relation d'intégrité ou pas mais pour être plus précis, la base A contient un suivi de dossier.
    Je souhaite que lorsque je sélectionne un dossier de la base A, les non conformité de la base B s'affiche à coté avec le détail.

    Ensuite, et si cela est possible, je souhaite savoir comment lier ces 2 informations.
    Quand j'essai de glisser un champ de la table 2 de la base B dans un formulaire de la base A, je ne comprends pas trop ce qui se passe... car les valeurs qui me remonte n'ont aucun lien avec l'ID selectionné en base A.
    Un petit exemple ci dessous de ce que je cherche a faire....
    Nom : Capture.JPG
Affichages : 1685
Taille : 48,1 Ko

  4. #4
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Ne maitrisant pas trop encore le vocabulaire (mais j'apprends vite), je ne sais pas s'il s'agit de relation d'intégrité
    Quand on construit une base de données, il est recommandé de mettre chaque chose à sa place une seule fois et ensuit de s'y référé. (on parle de 3ième forme normale).
    Par exemple si tu as des personnes et des salaires à payer, tu vas avoir une table pour les personnes qui te donnera son identifiant (ClefPersone) nom, sa date de naissance, etc. et une table des bulletins de paye qui va te donner le montant, la date et ainsi de suite et seulement l'identifiant de la personne.

    Ensuite on établi une relation entre la table tblPersonne et la table tblBulletin, sur la clefPersonne. Avec une relation simple tu pourrais mettre une ClefPersonne dans tblBulletin qui n'existe pas dans tblPersonne. Avec une relation d'intégrité, tu ne peux mettre qu'une ClefPersonne qui est dans tblPersonne et si tu essayes de supprimer une personne qui a des bulletins, le système t'en empêche.

    Tu pourrais, et je te le recommande, donc définir une relation simple entre Table1 et Table2 sur REFERENCE.
    En fait à moins que REFERENCE soit uniuq,e il faudrait créer une table des références et mettre en relation Table1 et Table2.

    Revenons à nos moutons si tu neveux pas te compliquer la vie pour commencer.

    Ce que tu veux faire c'est apparemment un sous-formulaire qui présente tes données de la table 2 (en passant je te recommande de donner un nom significatif à tes objets comme tblNonConformite).
    Voici comment je te proposes de le faire :

    1. Créer un formulaire basé sur Table1 (utilises l'assistant)
    2. Ensuite tu ouvres le formulaire table1 et tu ajoutes un contrôle Sous-Formulaire. Là aussi l'assistant va te guider pas à pas pour cette étape.
    3. La dernière étape de l'intégration est la définition des champs qui relient ton formulaire et ton sous-formulaire.


    Je pense que cela répondra à ton besoin.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonsoir,
    Si je comprends bien, au risque d répéter ce qui a déjà été dit, tu as deux base Access; tu as lié une table dz la base B a la base A en faisant un import en cochant la case lié des table.

    Maintenant tu veux afficher le contenu d'une requête à un formulaire ou tu veux faire apparaître tous le résultat de la table B en fonction d'un enregistrer de la table A.

    Pour la première solution il faut faire apparaître le propriété du formulaire et lui appliqué une requête avec un joint entre les table.

    Pour la deuxième solution, il faut créer le formulaire B avec que le données de la table B puis créer le formulaire A avec que les données de la table A; faire glisser le formulaire B sur le formulaire A puis etablir la relation entre le formulaire A et B sur le champ commun aux deux tables.

Discussions similaires

  1. Lier une base de données derby à un JTable
    Par Telemak dans le forum NetBeans
    Réponses: 2
    Dernier message: 01/05/2007, 19h42
  2. Page web lier avec base de donnée sql
    Par danlown dans le forum Accès aux données
    Réponses: 1
    Dernier message: 23/01/2007, 15h44
  3. Est-il possible de lier deux bases de données ?
    Par Garrett dans le forum Langage SQL
    Réponses: 6
    Dernier message: 03/07/2006, 12h28
  4. Peut on lier une base de donnée Mysql avec MS Project
    Par casper24 dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 06/04/2006, 22h21
  5. lier deux base de données par un même table
    Par id dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/02/2006, 14h28

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