Developpez.com - Rubrique Access

Le Club des Développeurs et IT Pro

Apprendre à créer un formulaire Access basé sur une relation plusieurs-à-plusieurs

Un tutoriel de Denis Hulo

Le 2020-05-11 21:40:03, par User, Rédacteur/Modérateur
Bonjour à tous,

Je vous propose un petit tutoriel décrivant comment réaliser un formulaire Access basé sur une relation plusieurs-à-plusieurs :

Formulaire basé sur une relation plusieurs-à-plusieurs

Objectif : créer une relation plusieurs-à-plusieurs, puis réaliser une formulaire Access pour la saisie et la consultation des données.
Nous allons voir comment mettre en place ce type d'interface en s'appuyant sur un bon schéma relationnel.

Bonne lecture !

Cordialement
  Discussion forum
9 commentaires
  • tee_grandbois
    Expert éminent sénior
    bonsoir User,
    un tuto très intéressant sur les associations entre tables et qui, en prime, met en avant le fameux piège à éviter des champs multivalués.
    Bravo
  • curt
    Membre émérite
    Bonjour User,

    super tuto que je viens de mettre en pratique.
    Une remarque néanmoins : Dans le Chapitre V, il est écrit :
    Code :
    1
    2
    3
        une relation 1 à plusieurs entre les tables T_Etudiant et T_Etudiant_Examen sur le champ IdEtudiant ;
        une relation 1 à plusieurs entre les tables T_Examen et T_Etudiant_Examen sur respectivement les colonnes IdExamen et IdExamen.
    je pense qu'il s'agit plutôt de :
    Code :
    1
    2
    3
        une relation 1 à plusieurs entre les tables T_Etudiant et T_Inscription_Examen sur le champ IdEtudiant ;
        une relation 1 à plusieurs entre les tables T_Examen et T_Inscription_Examen sur respectivement les colonnes IdExamen et IdExamen.
    Super boulot - Bravo
  • User
    Rédacteur/Modérateur
    Salut Tee

    Envoyé par tee_grandbois
    bonsoir User,
    un tuto très intéressant sur les associations entre tables et qui, en prime, met en avant le fameux piège à éviter des champs multivalués.
    Bravo
    Oui, c'est bien ce que j'ai cherché à faire.

    Merci à toi
  • marot_r
    Modérateur
    Bonjour User.

    Je suis d'accord avec toi sur les champs multi-valués même si je leur reconnaît d'indéniables avantages sur le plan de l'interface utilisateur.
    En plus des cases à cocher, de leur compacité, ils ont l'avantage de présenter tous les enregistrements disponibles sans travail particulier.
    Hélas une table d'association ne le fera que si elle a été au préalable remplie avec toutes les associations possibles.
    Il serait peut-être pertinent d'indiquer quelque part qu'il faut mette en place des actions pour cela.
    Certains débutants (comme moi au départ) pensent que la simple création des relations va remplir automatiquement la table d'association.

    Très beau travail par ailleurs.

    A+
  • User
    Rédacteur/Modérateur
    Salut René,

    Envoyé par marot_r
    Bonjour User.

    Je suis d'accord avec toi sur les champs multi-valués même si je leur reconnaît d'indéniables avantages sur le plan de l'interface utilisateur.
    En plus des cases à cocher, de leur compacité, ils ont l'avantage de présenter tous les enregistrements disponibles sans travail particulier.
    Hélas une table d'association ne le fera que si elle a été au préalable remplie avec toutes les associations possibles.
    Il serait peut-être pertinent d'indiquer quelque part qu'il faut mette en place des actions pour cela.
    Certains débutants (comme moi au départ) pensent que la simple création des relations va remplir automatiquement la table d'association.

    Très beau travail par ailleurs.

    A+
    C'est pas toujours simple de se mettre à leur place

    Concernant le remplissage, je vais ajouter d'une note.

    Merci bien
  • User
    Rédacteur/Modérateur
    Bien vu curt

    C'est en effet les restes d'une ancienne version.

    Je corrige ça.

    Merci à toi
  • Nounourskai31
    Candidat au Club
    Bonjour,

    Petite question d'un novice car je suis entrain de créer une base un poil plus compliquée et je me demande si la méthode décrite dans ce tutoriel peut être étendu.
    Je m'explique dans l'exemple de la base étudiants/examens donnée en exemple : serait-il possible de créer une troisième table (par exemple T_enseignants) et pouvoir assigner plusieurs enseignants à un ou plusieurs examens sur le même modèle que pour les étudiants.

    Merci

    Alain
  • User
    Rédacteur/Modérateur
    Bonjour,

    Envoyé par Nounourskai31

    Petite question d'un novice car je suis entrain de créer une base un poil plus compliquée et je me demande si la méthode décrite dans ce tutoriel peut être étendu.
    Je m'explique dans l'exemple de la base étudiants/examens donnée en exemple : serait-il possible de créer une troisième table (par exemple T_enseignants) et pouvoir assigner plusieurs enseignants à un ou plusieurs examens sur le même modèle que pour les étudiants.
    Oui, en effet, c'est le même principe :

    Si vous pouvez avoir plusieurs enseignants pour un même examen, il faut créer une table intermédiaire entre les tables examens et enseignants, par exemple :

    T_Examen_Enseignant
    IdExamen
    IdEnseignant

    ...

    Contenant les identifiants des deux autres tables.

    Cdlt,
  • Nounourskai31
    Candidat au Club
    Merci pour ce retour je vais tester ça de ce pas...

    Bonne journée