Cardinalités (x,n) — (x,n) : table de liaison
Une association dont les deux cardinalités maximales valent n devient une table de liaison. Sa clé primaire réunit les deux clés étrangères, et les attributs du lien y deviennent des colonnes.
- N-N
- plusieurs-à-plusieurs
- table de liaison
- associative
Syntaxe
A (x,n) ── ASSOC ── (x,n) B→ assoc(cle_a FK → a, cle_b FK → b, attributs…) clé primaire = (cle_a, cle_b)Exemple
MCD : ETUDIANT (0,n) ── SUIVRE ── (1,n) COURS │ noteMLD : etudiant(num_etudiant PK, nom) cours(code_cours PK, intitule) suivre(num_etudiant FK → etudiant, code_cours FK → cours, note) clé primaire = (num_etudiant, code_cours)Lignes de suivre : (E01, SQL1, 15), (E01, PY1, 12), (E02, SQL1, 9)Le couple (E01, SQL1) ne peut pas apparaître deux fois.À retenir
- Nommez la table d'après l'association (suivre, emprunter, contenir) ; le cours et le studio MLD font de même.
- Quand un même couple peut se répéter dans le temps, ajoutez une date à la clé : emprunter(num_membre, isbn, date_emprunt, date_retour), clé primaire (num_membre, isbn, date_emprunt). Voir la fiche MCD « Historisation ».
- Les minimums disparaissent : un (1,n) ne se garantit pas par la table de liaison et relève d'un contrôle applicatif ou d'un déclencheur.
- Piège : donner à la table une clé technique id seule sans déclarer UNIQUE (num_etudiant, code_cours). Un étudiant pourrait alors être inscrit deux fois au même cours.
Voir aussi
- Association porteuse d'attributs → MLDLes attributs d'une association suivent sa traduction : colonnes de la table de liaison si elle est n-n ou n-aire, colonnes de la table qui reçoit la clé étrangère si elle est fonctionnelle.
- Cardinalités (x,n) — (x,1) : association fonctionnelleDans une association (x,n)–(x,1), la clé étrangère va dans la table dont la cardinalité maximale vaut 1. Elle est NOT NULL en (1,1) et nullable en (0,1) : c'est la règle la plus utilisée.
- Clé primaire (PK)La clé primaire est la colonne, ou le groupe de colonnes, qui identifie chaque ligne sans ambiguïté. Elle vient de l'identifiant du MCD et ne peut être ni vide ni dupliquée.
- Clé naturelle ou clé techniqueUne clé naturelle vient du métier (ISBN, code pays) ; une clé technique est un numéro sans signification attribué par le système. Le bon choix dépend de la stabilité de la donnée.