Numérique et Sciences Informatiques > Bases de Données > Conception de Bases de Données > Modélisation conceptuelle (diagramme entité-association - notions de base)
Comprendre les Cardinalités des Relations
Ce cours détaille les différentes cardinalités possibles dans les relations d'un diagramme Entité-Association (E/A). Maîtrisez les concepts de un-à-un, un-à-plusieurs et plusieurs-à-plusieurs pour une modélisation précise.
Introduction aux Cardinalités
La cardinalité d'une relation décrit le nombre d'occurrences d'une entité qui peuvent être associées à une occurrence d'une autre entité à travers cette relation.
Comprendre les cardinalités est essentiel pour modéliser correctement les relations entre les données et garantir l'intégrité de la base de données.
Relation Un-à-Un (1:1)
Dans une relation Un-à-Un (1:1), chaque instance de l'entité A est liée à au plus une instance de l'entité B, et chaque instance de l'entité B est liée à au plus une instance de l'entité A.
Exemple :
- Une personne possède au plus un passeport.
- Un passeport est associé à une seule personne.
Ce type de relation est relativement rare en pratique.
Relation Un-à-Plusieurs (1:N)
Dans une relation Un-à-Plusieurs (1:N), chaque instance de l'entité A est liée à zéro, une ou plusieurs instances de l'entité B, mais chaque instance de l'entité B est liée à au plus une instance de l'entité A.
Exemple :
- Un auteur peut écrire plusieurs livres.
- Un livre est écrit par un seul auteur.
C'est l'un des types de relations les plus courants.
Relation Plusieurs-à-Plusieurs (N:M)
Dans une relation Plusieurs-à-Plusieurs (N:M), chaque instance de l'entité A est liée à zéro, une ou plusieurs instances de l'entité B, et chaque instance de l'entité B est liée à zéro, une ou plusieurs instances de l'entité A.
Exemple :
- Un étudiant peut suivre plusieurs cours.
- Un cours peut être suivi par plusieurs étudiants.
Les relations N:M sont souvent décomposées en deux relations 1:N en introduisant une entité associative.
Entité Associative
Lorsqu'une relation Plusieurs-à-Plusieurs (N:M) possède des attributs propres ou nécessite une granularité plus fine, on introduit une entité associative.
Reprenons l'exemple des étudiants et des cours :
Au lieu de directement relier Étudiant et Cours par une relation N:M, on introduit une entité Inscription.
- Étudiant est lié à Inscription par une relation 1:N.
- Cours est lié à Inscription par une relation 1:N.
- L'entité Inscription peut avoir des attributs comme date_inscription et note.
L'entité associative permet de stocker des informations spécifiques à la relation entre les deux entités initiales.
Notation des Cardinalités
Il existe différentes notations pour représenter les cardinalités dans les diagrammes E/A.
Une notation courante utilise des symboles pour indiquer le minimum et le maximum d'occurrences :
- 0..1 : Zéro ou un
- 1..1 : Exactement un
- 0..N : Zéro ou plusieurs
- 1..N : Un ou plusieurs
Par exemple, la relation Auteur écrit Livre pourrait être notée :
- Auteur 1..N écrit 0..N Livre
Cela signifie qu'un auteur peut écrire zéro ou plusieurs livres, et qu'un livre est écrit par un ou plusieurs auteurs (co-auteurs).
Ce qu'il faut retenir
- La cardinalité d'une relation décrit le nombre d'occurrences des entités impliquées.
- Les cardinalités courantes sont : Un-à-Un (1:1), Un-à-Plusieurs (1:N) et Plusieurs-à-Plusieurs (N:M).
- Dans une relation 1:1, chaque instance est liée à au plus une autre instance.
- Dans une relation 1:N, une instance peut être liée à plusieurs instances, mais une instance ne peut être liée qu'à une seule instance de l'autre entité.
- Dans une relation N:M, une instance peut être liée à plusieurs instances et vice versa.
- Les relations N:M sont souvent résolues en introduisant une entité associative et deux relations 1:N.
- Il existe différentes notations pour représenter les cardinalités.
FAQ
-
Quand faut-il utiliser une entité associative ?
Il faut utiliser une entité associative lorsque la relation Plusieurs-à-Plusieurs (N:M) possède des attributs propres ou nécessite une granularité plus fine. -
Pourquoi est-il important de bien définir les cardinalités ?
Une définition incorrecte des cardinalités peut entraîner des problèmes de redondance, d'intégrité et de performance de la base de données. -
Comment gérer une relation ternaire (impliquant trois entités) ?
Une relation ternaire peut être modélisée directement, ou décomposée en plusieurs relations binaires en introduisant une entité associative.