Le modèle Entité-association¶
Avant de créer une base de données, il est essentiel de comprendre ce que l’on veut représenter : les objets, leurs caractéristiques et les liens entre eux.
Le modèle entité-association (EA) (parfois aussi appelé entité-relation) est un outil graphique et conceptuel qui permet de décrire la structure d’une base de données avant sa création technique.
On l’utilise pour :
- organiser l’information,
- éviter les oublis et les incohérences,
- faciliter la communication entre programmeurs, analystes et utilisateurs.
Pour bien utiliser ce modèle, il faut maîtriser quelques termes de base.
🌍 Domaine d’application¶
Le domaine d’application correspond au contexte réel que l’on souhaite modéliser.
👉 C’est le « monde » que la base de données va représenter.
Exemples :
- Une école (étudiants, cours, enseignants)
- Une bibliothèque (livres, abonnés, emprunts)
- Une boutique en ligne (clients, produits, commandes)
Avant de créer une base de données, on doit clairement identifier ce domaine pour savoir quelles informations sont importantes.
🧩 Entité¶
Une entité est un objet ou un concept du domaine d’application que l’on veut mémoriser dans la base de données.
👉 Une entité représente quelque chose d’unique et identifiable.
Exemples :
- Un étudiant
- Un livre
- Un client
- Un cours
Chaque entité correspond généralement à un objet réel ou logique.
🏷️ Attribut¶
Un attribut est une caractéristique d’une entité.
👉 Il permet de décrire une entité avec des informations précises.
Exemple : entité Étudiant
- Numéro d’étudiant
- Nom
- Prénom
- Date de naissance
- Programme d'études
Chaque attribut possède une valeur pour chaque entité.
📦 Classe d’entités¶
Une classe d’entités est un ensemble d’entités de même nature qui partagent les mêmes attributs.
👉 C’est le « type » d’entité.
Exemples :
- Tous les étudiants forment la classe d’entités Étudiant
- Tous les livres forment la classe d’entités Livre
- Tous les clients forment la classe d’entités Client
Dans une base de données, une classe d’entités correspond souvent à une table (un tableau de données).
🔗 Relation¶
Une relation décrit le lien entre deux ou plusieurs classes d’entités.
👉 Elle explique comment les entités interagissent entre elles.
Exemples :
- Un étudiant s’inscrit à un cours.
- Un client soumet une commande.
- Un abonné emprunte un livre.
Les relations permettent de relier les données entre elles et de donner du sens à l’information.
Exemple simple¶
Supposons une base de données pour gérer les inscriptions aux cours pour chaque étudiant.
On aura besoin de connaître :
- la liste d'étudiants
- la liste des cours
- les inscriptions des étudiants aux cours
Notre base de données doit permettre de répondre minimalement aux questions suivantes :
- Quel cours suit un étudiant ?
- Combien d'étudiants sont inscrits à un cours ?
1. Classes d'entités¶
👨🎓 Étudiant
Représente chaque étudiant de l’école.
Attributs :
- numéro d'étudiant unique
- nom
- prénom
- date_naissance
- programme d'études
📘 Cours
Représente chaque cours offert.
Attributs :
- numéro de cours unique
- nom cours
- pondération
- département
Représentation des classes d'entités

2. Relations¶
La relation naturelle qui existe entre les entités est :
Un étudiant est inscrit à un cours
Toutefois, quand on regarde l'ensemble des classes d'entités :
Un étudiant est inscrit à 1 ou plusieurs cours différents
Un cours est suivi par 1 ou plusieurs étudiants différents
Ainsi, il est faux de lier un numéro d'étudiant à un numéro de cours !
On doit donc créer une classe de relation avec ses propres attributs qui représente les inscriptions.
Classe Inscription
Représente l’inscription d’un étudiant à un cours.
Attributs :
- session
- note finale
Représentation de la relation

Les cardinalités de relation¶
Les cardinalités possibles :
- 1:1 et 1:N
- 0:1 et 0:N
Exemple :
-
Étudiant - Cours
- Un étudiant s'inscrit à au moins un cours (sinon il n'est pas étudiant).
- Un étudiant peut s'inscrire à plusieurs cours.
👉 Cardinalité : Étudiant 1:N
-
Cours - Étudiant
- Un cours peut faire partie de l'offre du Cégep sans qu'il n'y ait d'étudiant inscrit.
- Un cours peut avoir plusieurs étudiants inscrits.
👉 Cardinalité : Cours 0:N

Les identifiants¶
Les identifiants rendent chaque entité d'une classe unique.
- L'étudiant a un numéro de DA qui le rend unique
- Le cours a un numéro de cours qui le rend unique
Toutefois, les relations doivent aussi être uniques.
Ainsi, une inscription à une session donnée avec une note finale n'est pas unique : plusieurs étudiants peuvent être inscrits à la même session et avoir la même note finale.
Pour rendre une relation unique :
On insère les identifiants des entités liées dans la relation !
✔️ Une inscription est unique pour un étudiant dans un cours donné à une session donnée.
Représentation :
