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 :

Créer des relations avec clé multi-champs [AC-2010]


Sujet :

Access

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Invite
    Inscrit en
    Février 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Invite

    Informations forums :
    Inscription : Février 2014
    Messages : 5
    Points : 6
    Points
    6
    Par défaut Créer des relations avec clé multi-champs
    Bjr à tous,

    Je me permets de poster un message car j'ai des difficultés à comprendre clairement comment créer des relations entre des tables avec des clé primaires (multi-champs).

    L'idée générale est de créer un formulaire de saisie des données avec des tables liées, renseignées par des fournisseurs (essieux, axes d'essieu et roues).

    Vous trouverez en PJ la vision de type association-entité (enfin ma vision....).

    Je sais qu'une clé primaires multi-champs d'une table doit être composée de clés étrangères qui sont clés primaires d'autres tables.
    Ceci dit, je n'arrive pas à appliquer ce principe au modèle de la PJ.


    C'est pourquoi, je serais réconnaissant si qqn pouvez m'éclairer sur le sujet.

    Dans l'attente de vous lire.

    D'avance merci.

    vregn
    Images attachées Images attachées  

  2. #2
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 052
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 052
    Points : 24 645
    Points
    24 645
    Par défaut
    Bonjour,

    Je ne comprends pas bien le problème. Dans ton modèle je vois des N° de série (essieu, axe, roue), ces N° sont uniques habituellement. Dans ce cas pourquoi vouloir rajouter des clefs supplémentaires à la liaison ?

    Par contre à aucun endroit je ne vois d'ID pour identifier l'enregistrement de manière unique. C'est le B-A BA dans la construction d'une table... Avant même de penser information, il faut penser colonne ID. Cet ID est généralement utiliser pour faire des liaisons (rapidité, simplicité, robustesse).

    Cordialement,

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Invite
    Inscrit en
    Février 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Invite

    Informations forums :
    Inscription : Février 2014
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Bjr loufab,

    Merci de ton retour.

    Effectivement, je me suis dirige dans une mauvaise direction....
    Hier, j ai construit les relations entre essieu, axe et roue via les id unique - NumAuto.
    En revanche, ma contrainte sur l unicite des composants je l ai resolue via du codevba empechant la saisie dans le formulaire si les champs sont identiques.

    Dans ma construction, l unicite de l essieu n est pas assure uniquement par le Numero de serie.
    En effet, 1 essieu est unique de part : le fournisseur (FNR_ESSIEU), type (TYPE_ESSIEU) et le numéro (NUM_ESSIEU).

    Tes remarques sont pertinentes j ai voulu complique les choses (erreur de debutant!) le BABA est gage d efficacite.

    Encore merci.

    VR

  4. #4
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 052
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 052
    Points : 24 645
    Points
    24 645
    Par défaut
    Bonjour,

    Il me semble que tu confonds relations entre tables et absence de doublons. Il s'agit de 2 choses différentes.

    Pour éviter les doublons avec des champs multiples il y a comme tu l'as fais le contrôle à la saisie.
    Il y a une autre méthode plus académique, c'est d'utiliser des index à clefs multiple, puis de gérer l'erreur dans le form_error.

    Cordialement,

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Invite
    Inscrit en
    Février 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Invite

    Informations forums :
    Inscription : Février 2014
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Bjr Loufab,

    J'ai essayé de comprendre ton conseil sur : "des index à clefs multiples, puis de gérer l'erreur dans le form_error" pour aller au fond des choses.

    En revanche, je ne comprends pas comment l'utiliser.
    En effet, lorsque j'ai essayé de mettre les champs suivants: le fournisseur (FNR_ESSIEU), type (TYPE_ESSIEU) et le numéro (NUM_ESSIEU) en index, l'unicité se fait sur le champ en lui même et non sur la combinaison des champs {FNR_ESSIEU, TYPE_ESSIEU, NUM_ESSIEU}.

    En effet, mon NUM_ESSIEU peut ne pas être unique mais sa combinaison avec le TYPE_ESSIEU et FNR_ESSIEU l'est.

    Ai-je bien compris le fonctionnement des index ou il y a qqchose que je n'ai pas saisie?

    Encore merci de ton éclairage d'expert.

    VR

  6. #6
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 052
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 052
    Points : 24 645
    Points
    24 645
    Par défaut
    Bonjour,

    Voici comment se présente la fenêtre des index avec un multichamp.

    Nom : idx.jpg
Affichages : 427
Taille : 33,1 Ko

    Les colonnes (nom, prenom) s'enchainent les une au dessous des autres sous la même étiquette ( indexMultiple) et Unique est réglé à Oui.
    Ignorer les nulls est un bon réglage pour améliorer les perfo.

    Cordialement,

  7. #7
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Sur Access 2010, vous pouvez aussi utiliser les macro de données AvantMaj

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

Discussions similaires

  1. [AC-2010] Impossible de créer des relations avec une table liée à Outlook
    Par lagratteCchouette dans le forum Modélisation
    Réponses: 4
    Dernier message: 26/01/2014, 21h44
  2. Créer des boutons avec modalResult
    Par Amayii dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 26/11/2006, 07h19
  3. [Eclipse] [VE] Créer des menus avec les classes SWT de VE
    Par jbcorens dans le forum SWT/JFace
    Réponses: 3
    Dernier message: 30/08/2005, 12h25
  4. Réponses: 3
    Dernier message: 07/04/2005, 15h04
  5. [CR] Est il possible de créer des univers avec Seagate Info?
    Par Frank dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 27/06/2002, 15h22

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