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

Access Discussion :

relation à faire entre 2 tbl


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 83
    Points : 38
    Points
    38
    Par défaut relation à faire entre 2 tbl
    Bonjour,

    j'ai une table T1 avec:
    numéro (numauto)
    commande (peut revenir plusieurs fois)
    autres champs infos sur la commande

    j'aimerais lui joindre une table T2 qui enregistrerait à chaque record:
    le numéroauto de la T1 ET
    le numéro de la commande deT1
    n° article
    quantité
    autres infos diverses sur article

    Je n'ai pas réussi à faire ça pour que un nouveau record en T1 me donne un nouveau record en T2; je dois ajouter des infos supplémentaires en T2 qui lui sont propres (n° article, quantité, etc...)
    Donc une commande d'un coté et plusieurs articles de l'autre mais je dois lier ces 2 tables; précision: la seconde n'est pas encore construite (j'attends vos conseils après qq échecs) et j'aimerais savoir à quelle condition je peux lier le T1 à la T2 (pas de champs vide ou autre ...)
    ps: pas encore fais de formulaire, mais je devrais voir la relation déjà avec la petite croix en T1 il me semble.

    Merci

    Patrick (qui en fini pas de débuter, rameur sans fin)
    Patrick (envie d'apprendre )

  2. #2
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Il y a deux étapes.
    1. Construire la table
    2. Créer la relation


    Construire la table
    dans ta T2,
    tu auras un champ ID de la T1 que tu nommeras comme tu veux (dans l'exemple IDT1) et qui sera la clé étrangère (le champ lié) de la clé primaire (l'ID en numéroAuto) de T1
    Une fois le champ créé, tu vas modifer quelques 'détails'
    • Parce que tu veux le lier à un NuméroAuto, mais que tu ne veux pas qu'il s'incrémente tout seul:
    Type de données : Numérique
    Taille : Entier Long
    • Si tu veux permettre de laisser IDT1 sans valeur définie
    Null Interdit : Non
    • Si tu ne le veux pas

    Null Interdit : Oui
    • Dans tous les cas :

    Valeur par défaut : Null (ou tu laisses en blanc, c'est pareil dans ce cas)
    Légende : N°Commande

    Tu n'auras pas un champ Numéro De la commande (qui peut apparaître à plusieurs reprises en T1), car tu pourras récupérer cette information dans la T1 via une requête.

    Tu ajoutes tous les autres champs que tu veux (référence article, quantité, prix, txtva, remise, commentaire) mais aucun champ susceptible de contenir un calcul (pas de donnée calculée dans une table access => Calculs dans les requêtes)

    Faire la relation
    Afficher la fenêtre des relations.
    Afficher les tables T1 et T2
    Faire un drag & Drop de ID de T1 sur le champ IDT1
    Cocher la case "appliquer l'intégrité référentielle" si tu veux que chaque valeur inscrite dans IDT1 soit AVANT TOUT existante dans la clé primaire de la table T1
    Valider.

    C'est fini.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 83
    Points : 38
    Points
    38
    Par défaut bonsoir et merci
    Merci Maxence
    j'essaie ça de suite et je reviens dès que possible donner de mes nouvelles.

    Patrick
    Patrick (envie d'apprendre )

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 83
    Points : 38
    Points
    38
    Par défaut bon j'ai essayé
    Voilà, j'ai essayé mais bien sur je n'ai pas ce que je voudrais:
    dois je passer par un formulaire ? surement ...
    la seconde table doit avoir le numéro auto de la première (ça je l'ai) dans le champs lié mais la commande de la T1 doit aussi se recopier en auto dans la
    T2 sachant que je mets un n° de commande dans la première et que le lien pour les articles de cette commande est évidemment le N° de cette commande...
    D'après ce que tu écris, je peux obtenir le n° de commande en T2 que par un formulaire et via une requete.

    Toujours difficile à exprimer, excuse moi si je ne suis pas clair.
    Pat
    Patrick (envie d'apprendre )

  5. #5
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Va sur :

    C:\program files\microsoft office\office\samples\comptoi.mdb

    (ou un chemin semblable)
    Tu devrais trouver un exemple qui correspond très fortement à ce que tu veux faire.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 83
    Points : 38
    Points
    38
    Par défaut petit oubli encore
    La relation est 1:n mais ici j'ai plutot 1:1 donc j'ai un problème
    je pense en tout cas car je vois dans les relations et pas le "8" couché.


    :-(
    Patrick (envie d'apprendre )

Discussions similaires

  1. quel lien dois je faire entre mes classes ?
    Par condor_01 dans le forum Diagrammes de Classes
    Réponses: 8
    Dernier message: 01/03/2007, 23h17
  2. Quel choix faire entre 2 portables ?
    Par nesquik dans le forum Ordinateurs
    Réponses: 3
    Dernier message: 04/12/2005, 10h27
  3. [novice] relation fk entre deux tables
    Par localhost dans le forum Langage SQL
    Réponses: 1
    Dernier message: 30/10/2005, 06h33
  4. relation double entre deux tables
    Par thibautche dans le forum Langage SQL
    Réponses: 6
    Dernier message: 04/05/2005, 11h31
  5. Relation facultative entre 2 packages
    Par giviz dans le forum UML
    Réponses: 4
    Dernier message: 20/12/2004, 21h37

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