Qu'est-ce que la modélisation ER?
Le 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 leur relation pour un système logiciel spécifié. Un modèle ER est utilisé pour représenter des objets du monde réel.
Une entité est une chose ou un objet dans le monde réel qui se distingue de l'environnement environnant. 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.
Dans ce didacticiel, vous apprendrez-
- Modèle de relation d'entité améliorée (EER)
- Pourquoi utiliser ER Model?
- Entités de la bibliothèque "MyFlix"
- Définition des relations entre les entités
Considérons à nouveau notre premier exemple. Un employé d'une organisation est une entité. Si "Peter" est un programmeur (un employé ) chez Microsoft, il peut avoir des attributs ( propriétés) comme le nom, l'âge, le poids, la taille, etc. Il est évident que ceux-ci contiennent des valeurs qui lui sont pertinentes.
Chaque attribut peut avoir des valeurs . Dans la plupart des cas, un seul attribut a une valeur. Mais il est possible que les attributs aient également plusieurs valeurs . Par exemple, l'âge de Peter a une valeur unique. Mais sa propriété "numéros de téléphone" peut avoir plusieurs valeurs.
Les entités peuvent avoir des relations les unes avec les autres. Prenons l'exemple le plus simple. Supposons que chaque programmeur Microsoft dispose d'un ordinateur. Il est clair que cet ordinateur de Peter est aussi une entité. Peter utilise cet ordinateur, et le même ordinateur est utilisé par Peter. En d'autres termes, il existe une relation mutuelle entre Peter et son ordinateur.
Dans la modélisation des relations d'entité, 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 de relation d'entité améliorée (EER) est un modèle de données de haut niveau qui fournit des extensions au modèle original de 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 Unified Modeling Language; c'est 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 la notation UML.
Pourquoi utiliser ER Model?
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 est le fait que les concepteurs, les développeurs et les utilisateurs finaux ont tendance à voir les données et leur utilisation différemment. Si cette situation n'est pas coché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 tables relationnelles.
É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 de diagrammes ER. Nous utiliserons cette base de données pour tous les travaux 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 veut maintenant passer à un SGBD
Regardons 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 connecter les entités.
- Chaque attribut d'une entité donnée doit avoir un nom unique.
Entités de la bibliothèque "MyFlix"
Les entités à inclure dans notre diagramme ER sont;
- Membres - cette entité détiendra des informations sur les membres.
- Films - cette entité détiendra des informations sur les films
- Catégories - cette entité contiendra des informations qui placent les films dans différentes catégories telles que "Drame", "Action" et "Epic", etc.
- Location de films - cette entité détiendra des informations sur les films loués aux membres.
- Paiements - cette entité conservera des informations sur les paiements effectués par les membres.
Définition des 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 plus d'un membre sur 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 joué par 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 de films et de 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 le tableau des films est un-à-plusieurs.
Membres et entités de paiement
Ce qui suit est vrai à propos des membres et des paiements
- Un membre ne peut avoir qu'un seul compte mais peut effectuer plusieurs paiements.
Nous pouvons en déduire que la nature de la relation entre les membres et les entités de paiement est un-à-plusieurs.
Créons maintenant un modèle EER à l'aide de MySQL Workbench
Dans l'atelier MySQL, cliquez sur le bouton "+"
Double-cliquez sur le bouton Ajouter un diagramme pour ouvrir l'espace de travail des 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 de relation de lieu nous permet de définir les relations entre les entités.
L' entité des membres aura les attributs suivants
- Numéro de membre
- Noms complets
- Le genre
- Date de naissance
- Adresse physique
- adresse postale
Créons maintenant la table des membres
1.Faites glisser l'objet de table depuis le panneau d'outils
2. déposez-le dans la zone de l'espace de travail. Une entité nommée table 1 apparaît
3.Double-cliquez dessus. La fenêtre des propriétés ci-dessous apparaît
Suivant ,
- Remplacez le tableau 1 par Membres
- Modifiez le idtable1 par défaut en Membership_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.
L'espace de travail de votre diagramme doit maintenant ressembler à celui illustré ci-dessous.
Permet de créer une relation entre les membres et les locations de films
- Sélectionnez également la relation de lieu en utilisant les colonnes existantes
- Cliquez sur Membership_number dans le tableau Members
- Cliquez sur reference_number dans le tableau MovieRentals
Répétez les étapes ci-dessus pour les autres relations. Votre diagramme ER devrait maintenant ressembler à ceci -
Résumé
- La forme complète de ER est les diagrammes d'entités et de relations. Ils jouent un rôle très important dans le processus de conception de la base de données. 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.
Le modèle ER complet est joint ci-dessous. Vous pouvez simplement l'importer dans MySQL Workbench
Cliquez ici pour télécharger le modèle ER