Essayez !
Qu’est-ce qu’une relation plusieurs-à-plusieurs ?
Les relations plusieurs-à-plusieurs sont les relations les plus fréquemment utilisées entre les tables. Elles fournissent des informations essentielles, telles que les clients contactés par vos commerciaux et les produits commandés par les clients.
Une relation plusieurs-à-plusieurs existe lorsqu’un ou plusieurs éléments d’une table peuvent avoir une relation avec un ou plusieurs éléments dans une autre table. Par exemple :
-
Votre table Commandes inclut les commandes passées par plusieurs clients (figurant dans la table Clients), et un client peut passer plusieurs commandes.
-
Votre table Produits inclut les différents produits que vous commercialisez, lesquels apparaissent dans diverses commandes de la table Commandes.
-
Une commande peut également inclure une ou plusieurs instances d’un produit spécifique et/ou une ou plusieurs instances de plusieurs produits.
Par exemple, le numéro de commande 1012 de la cliente Ariane Panetier peut inclure un exemplaire des produits 12 et 15, et cinq du produit 30.
Créer des relations plusieurs-à-plusieurs
Les relations plusieurs-à-plusieurs sont créées différemment des relations un-à-un ou un-à-plusieurs. Pour ces relations, il suffit de connecter les champs appropriés à une ligne. Pour créer des relations plusieurs-à-plusieurs, vous devez créer une nouvelle table pour connecter les deux autres. Cette nouvelle table est appelée table intermédiaire (ou parfois table de liaison ou table de jointure).
Dans le scénario décrit précédemment, vous créez une table Détails de la commande avec des enregistrements incluant, pour chaque élément dans un ordre donné, la référence figurant dans la table Commandes et la référence figurant dans la table Produits. Vous créez une clé primaire pour cette table à l’aide des clés combinées des deux tables.
Dans notre scénario, le numéro de commande 1012 d’Ariane Panetier inclut les produits 12, 15 et 30. Les entrées de la table Détails de la commande se présentent comme suit :
Réf commande |
Réf produit |
---|---|
1012 |
12 |
1012 |
15 |
1012 |
30 |
Ariane a commandé un exemplaire des produits 12 et 15, et cinq du produit 30. Il n’est pas possible d’ajouter une autre ligne avec les valeurs 1012 et 30, car la combinaison de la référence de la commande et de la référence de produit forme la clé primaire et que les clés primaires doivent être uniques. Au lieu de cela, nous ajoutons un champ Quantité à la table Détails de la commande.
Réf commande |
Réf produit |
Quantité |
---|---|---|
1012 |
12 |
1 |
1012 |
15 |
1 |
1012 |
30 |
5 |
Créer une table intermédiaire
-
Sélectionnez Créer > Table.
-
Sélectionnez Enregistrer .
-
Pour Nom de la table, entrez un titre descriptif. Pour préciser sa fonction, vous pouvez inclure la mention jointure ou intermédiaire dans le nom de la table.
Créer des champs dans la table intermédiaire
En tant que première colonne de table, Access ajoute automatiquement un champ ID. Modifiez ce champ de manière à reproduire la référence de la première table dans votre relation plusieurs-à-plusieurs. Par exemple, si la première table est une table Commandes appelée Réf commande et que sa clé primaire est un nombre, remplacez le nom du champ Réf dans la nouvelle table par Réf commande et, pour le type de données, utilisez Numérique.
-
En mode Feuille de données, sélectionnez l’en-tête de colonne ID, puis tapez le nouveau nom pour le champ.
-
Sélectionnez le champ que vous venez de renommer.
-
Sous l’onglet Champs de la table , sous Type de données, sélectionnez un type de données qui correspond au champ de la table d’origine, tel que Nombre ou Texte court.
-
Sélectionnez Cliquer pour ajouter, puis un type de données correspondant à la clé primaire dans la deuxième table. Dans l’en-tête de colonne (qui est déjà sélectionné), tapez le nom du champ de clé primaire de la deuxième table (par exemple, Réf produit).
-
Si vous avez besoin de suivre d’autres informations sur ces enregistrements (par exemple, quantité d’articles), vous pouvez créer des champs supplémentaires.
Combiner des champs d’ID primaire
À présent que vous avez des champs contenant les ID des deux tables que vous voulez vous connecter, créez une clé primaire, sur la base de ces ID dans la table intermédiaire.
-
En mode Création, ouvrez la table intermédiaire.
-
Sélectionnez les deux lignes qui contiennent les ID. (Si vous avez suivi la procédure précédente, il s’agit des deux premières lignes.)
-
Sélectionnez Création de table > clé primaire.
Les icônes de clé s’affichent en regard des deux champs d’ID.
Connecter les trois tables pour créer la relation plusieurs-à-plusieurs
Pour établir la relation plusieurs-à-plusieurs, créez une relation un-à-plusieurs entre le champ de clé primaire dans chaque table et le champ correspondant dans la table intermédiaire. Pour plus d’informations sur la façon de procéder, voir Utiliser des relations entre les tables.
Lorsque vous avez terminé, les relations doivent ressembler à ceci :