Qu’est-ce que la modélisation ER ? Apprendre avec l'exemple
Qu’est-ce que la modélisation ER ?
Modèle de relation d'entité (ER Modeling) est une approche graphique de la conception de bases de données. Il s'agit d'un modèle de données de haut niveau qui définit les éléments de données et leurs relations pour un système logiciel spécifié. Un modèle ER est utilisé pour représenter des objets du monde réel.
An Entité est une chose ou un objet dans le monde réel qui se distingue de l'environnement qui l'entoure. Par exemple, chaque employé d’une organisation est une entité distincte. Voici quelques-unes des principales caractéristiques des entités.
- Une entité possède un ensemble de propriétés.
- Les propriétés d'entité peuvent avoir des valeurs.
Reprenons notre premier exemple. Un employé d'une organisation est une entité. Si « Peter » est un programmeur (un employé) à Microsoft, il peut avoir attributs (propriétés) comme le nom, l'âge, le poids, la taille, etc. Il est évident que celles-ci contiennent des valeurs qui le concernent.
Chaque attribut peut avoir Nos valeurs. Dans la plupart des cas, un seul attribut a une seule valeur. Mais il est possible que les attributs aient valeurs multiples aussi. Par exemple, l'âge de Pierre a une seule valeur. Mais sa propriété « numéros de téléphone » peut avoir plusieurs valeurs.
Les entités peuvent avoir des relations avec l'un l'autre. Prenons l'exemple le plus simple. Supposons que chacun Microsoft Le programmeur reçoit un ordinateur. Il est clair que L'ordinateur de Pierre est aussi une entité. Peter utilise cet ordinateur, et Peter utilise le même ordinateur. En d’autres termes, il existe une relation mutuelle entre Peter et son ordinateur.
In Modélisation des relations entre entités, nous modélisons les entités, leurs attributs et les relations entre les entités.
Modèle de relation d'entité améliorée (EER)
Le modèle Enhanced Entity Relationship (EER) est un modèle de données de haut niveau qui fournit des extensions au modèle original. Relation d'entité(ER). Les modèles EER prennent en charge une conception plus détaillée. La modélisation EER est apparue comme une solution de modélisation de bases de données très complexes.
EER utilise la notation UML. UML est l'acronyme de Langage de modélisation unifié; il s'agit d'un langage de modélisation à usage général utilisé lors de la conception de systèmes orientés objet. Les entités sont représentées sous forme de diagrammes de classes. Les relations sont représentées comme des associations entre entités. Le diagramme ci-dessous illustre un diagramme ER utilisant le notation UML.
Pourquoi utiliser le modèle ER ?
Maintenant, vous vous demandez peut-être pourquoi utiliser la modélisation ER alors que nous pouvons simplement créer la base de données et tous ses objets sans modélisation ER ? L’un des défis rencontrés lors de la conception d’une base de données réside dans le fait que les concepteurs, les développeurs et les utilisateurs finaux ont tendance à percevoir les données et leur utilisation différemment. Si cette situation n’est pas contrôlée, nous pouvons finir par produire un système de base de données qui ne répond pas aux exigences des utilisateurs.
Les outils de communication compris par toutes les parties prenantes (utilisateurs techniques et non techniques) sont essentiels pour produire des systèmes de bases de données qui répondent aux exigences des utilisateurs. Les modèles ER sont des exemples de tels outils.
Les diagrammes ER augmentent également la productivité des utilisateurs car ils peuvent être facilement traduits en tableaux relationnels.
Étude de cas : diagramme ER pour la vidéothèque « MyFlix »
Travaillons maintenant avec le système de base de données MyFlix Video Library pour aider à comprendre le concept des diagrammes ER. Nous utiliserons cette base de données pour toutes les tâches pratiques dans le reste de ce tutoriel
MyFlix est une entité commerciale qui loue des films à ses membres. MyFlix a stocké ses enregistrements manuellement. La direction souhaite désormais passer à un SGBD
Examinons les étapes pour développer un diagramme EER pour cette base de données.
- Identifiez les entités et déterminez les relations qui existent entre elles.
- Chaque entité, attribut et relation doit avoir des noms appropriés qui peuvent également être facilement compris par les personnes non techniques.
- Les relations ne doivent pas être directement liées les unes aux autres. Les relations doivent relier les entités.
- Chaque attribut d'une entité donnée doit avoir un nom unique.
Entités dans la bibliothèque « MyFlix »
Les entités à inclure dans notre diagramme ER sont;
- Membres – cette entité détiendra les informations sur les membres.
- Films – cette entité détiendra des informations concernant les films
- Catégories – cette entité détiendra des informations classant les films dans différentes catégories telles que « Drame », « Action » et « Épique », etc.
- Location de films – cette entité détiendra des informations sur les films loués aux membres.
- Paiements – cette entité détiendra des informations sur les paiements effectués par les membres.
Définir les relations entre les entités
Membres et films
Ce qui suit est vrai en ce qui concerne les interactions entre les deux entités.
- Un membre peut louer plus d'un film sur une période donnée.
- Un film peut être loué par plusieurs membres au cours d'une période donnée.
À partir du scénario ci-dessus, nous pouvons voir que la nature de la relation est plusieurs à plusieurs. Les bases de données relationnelles ne prennent pas en charge les relations plusieurs-à-plusieurs. Nous devons introduire une entité de jonction. C'est le rôle que joue l'entité MovieRentals. Il a une relation un-à-plusieurs avec la table des membres et une autre relation un-à-plusieurs avec la table des films.
Entités Films et catégories
Ce qui suit est vrai pour les films et les catégories.
- Un film ne peut appartenir qu’à une seule catégorie, mais une catégorie peut contenir plusieurs films.
On peut en déduire que la nature de la relation entre les catégories et la table des films est de un à plusieurs.
Membres et entités de paiement
Ce qui suit est vrai concernant les membres et les paiements
- Un membre ne peut avoir qu’un seul compte mais peut effectuer plusieurs paiements.
On peut en déduire que la nature de la relation entre les membres et les entités de paiement est de type un-à-plusieurs.
Créons maintenant un modèle EER en utilisant MySQL Workbench
Dans le MySQL établi, cliquez sur le bouton « + »
Double cliquez sur le bouton Ajouter un diagramme pour ouvrir l'espace de travail pour les diagrammes ER.
La fenêtre suivante apparaît
Regardons les deux objets avec lesquels nous allons travailler.
L'objet table nous permet de créer des entités et de définir les attributs associés à l'entité particulière.
Le bouton Placer une relation nous permet de définir des relations entre les entités.
Les membres' l'entité aura les attributs suivants
- Numéro de membre
- Noms complets
- Egalité entre les
- Date de naissance
- Adresse physique
- Adresse postale
Créons maintenant la table des membres
1.Faites glisser l'objet tableau depuis le panneau d'outils
2.Déposez-le dans la zone de travail. Une entité nommée table 1 apparaît
3.Double Clique dessus. La fenêtre des propriétés ci-dessous apparaît
Suivant ,
- Remplacer le tableau 1 par Membres
- Modifiez l'idtable1 par défaut en member_number
- Cliquez sur la ligne suivante pour ajouter le champ suivant
- Faites de même pour tous les attributs identifiés dans l'entité des membres.
Votre fenêtre de propriétés devrait maintenant ressembler à ceci.
Répétez les étapes ci-dessus pour toutes les entités identifiées.
Votre espace de travail de diagramme devrait maintenant ressembler à celui illustré ci-dessous.
Créons une relation entre les membres et les locations de films
- Sélectionnez également la relation de lieu en utilisant les colonnes existantes
- Cliquez sur numéro_adhésion dans le tableau Membres
- Cliquez sur reference_number dans le tableau MovieRentals
Répétez les étapes ci-dessus pour d’autres relations. Votre diagramme ER devrait maintenant ressembler à ceci :
Résumé
- La forme complète de ER est constituée de diagrammes d’entités et de relations. Ils jouent un rôle très important dans conception de base de données processus. Ils servent d'outil de communication non technique pour les personnes techniques et non techniques.
- Les entités représentent des choses du monde réel ; ils peuvent être conceptuels comme une commande client ou physiques comme un client.
- Toutes les entités doivent recevoir des noms uniques.
- Les modèles ER permettent également aux concepteurs de bases de données d'identifier et de définir les relations qui existent entre les entités.
L’intégralité du modèle ER est jointe ci-dessous. Vous pouvez simplement l'importer dans MySQL Workbench
Cliquez ici pour télécharger le modèle ER