O que é Modelagem ER? Aprenda com o exemplo

O que é Modelagem ER?

Modelo de relacionamento de entidade (Modelagem ER) é uma abordagem gráfica para design de banco de dados. É um modelo de dados de alto nível que define os elementos de dados e seu relacionamento para um sistema de software especificado. Um modelo ER é usado para representar objetos do mundo real.

Um Entidade é uma coisa ou objeto no mundo real que pode ser distinguido do ambiente circundante. Por exemplo, cada funcionário de uma organização é uma entidade separada. A seguir estão algumas das principais características das entidades.

  • Uma entidade possui um conjunto de propriedades.
  • As propriedades da entidade podem ter valores.

Neste tutorial, você aprenderá-

Vamos considerar nosso primeiro exemplo novamente. Um funcionário de uma organização é uma entidade. Se 'Peter' for um programador (um empregado ) na Microsoft, ele pode ter atributos ( propriedades) como nome, idade, peso, altura, etc. É óbvio que essas contêm valores relevantes para ele.

Cada atributo pode ter Valores . Na maioria dos casos, um único atributo possui um valor. Mas é possível que os atributos tenham múltiplos valores tb. Por exemplo, a idade de Pedro tem um único valor. Mas sua propriedade 'números de telefone' pode ter vários valores.

Entidades podem ter relacionamentos um com o outro. Vamos considerar o exemplo mais simples. Suponha que cada Programador Microsoft receba um Computador. É claro que Computador de peter também é uma entidade. Peter está usando aquele computador, e o mesmo computador é usado por Peter. Em outras palavras, existe uma relação mútua entre Peter e seu computador.

No Modelagem de Relacionamento de Entidade, modelamos entidades, seus atributos e relacionamentos entre entidades.

Modelo de relacionamento de entidade aprimorado (EER)

O modelo de relacionamento de entidade aprimorado (EER) é um modelo de dados de alto nível que fornece extensões para o modelo original Relacionamento de entidade Modelo (ER). Os modelos EER suportam mais design de detalhes. A modelagem EER surgiu como uma solução para modelar bancos de dados altamente complexos.

EER usa notação UML. UML é a sigla para Unified Modeling Language; é uma linguagem de modelagem de propósito geral usada ao projetar sistemas orientados a objetos. As entidades são representadas como diagramas de classes. Os relacionamentos são representados como associações entre entidades. O diagrama mostrado abaixo ilustra um diagrama ER usando o Notação UML .

Por que usar o modelo ER?

Agora você pode pensar por que usar a modelagem ER quando podemos simplesmente criar o banco de dados e todos os seus objetos sem a modelagem ER? Um dos desafios enfrentados ao projetar um banco de dados é o fato de que designers, desenvolvedores e usuários finais tendem a ver os dados e seu uso de maneira diferente. Se essa situação não for verificada, podemos acabar produzindo um sistema de banco de dados que não atende aos requisitos dos usuários.

As ferramentas de comunicação compreendidas por todas as partes interessadas (usuários técnicos e não técnicos) são críticas na produção de sistemas de banco de dados que atendam aos requisitos dos usuários. Os modelos ER são exemplos de tais ferramentas.

Os diagramas ER também aumentam a produtividade do usuário, pois podem ser facilmente traduzidos em tabelas relacionais.

Estudo de caso: diagrama ER para a biblioteca de vídeos 'MyFlix'

Agora vamos trabalhar com o sistema de banco de dados da biblioteca de vídeos MyFlix para ajudar a entender o conceito de diagramas ER. Usaremos este banco de dados para toda a prática no restante deste tutorial

MyFlix é uma entidade empresarial que aluga filmes para seus membros. MyFlix tem armazenado seus registros manualmente. A gerência agora quer mudar para um DBMS

Vejamos as etapas para desenvolver o diagrama EER para este banco de dados

  1. Identifique as entidades e determine os relacionamentos que existem entre elas.
  2. Cada entidade, atributo e relacionamento deve ter nomes apropriados que possam ser facilmente compreendidos por pessoas não técnicas.
  3. Os relacionamentos não devem ser conectados diretamente um ao outro. Os relacionamentos devem conectar entidades.
  4. Cada atributo em uma determinada entidade deve ter um nome exclusivo.

Entidades na biblioteca 'MyFlix'

As entidades a serem incluídas em nosso Diagrama IS estão;

  • Membros - esta entidade manterá as informações dos membros.
  • Filmes - esta entidade manterá informações sobre filmes
  • Categorias - esta entidade manterá informações que classificam os filmes em diferentes categorias, como 'Drama', 'Ação' e 'Épico' etc.
  • Aluguel de filmes - esta entidade manterá informações sobre filmes alugados aos membros.
  • Pagamentos - esta entidade irá reter informações sobre os pagamentos feitos pelos membros.

Definindo as relações entre entidades

Membros e filmes

O seguinte é verdadeiro em relação às interações entre as duas entidades.

  • Um membro pode alugar mais de um filme em um determinado período.
  • Um filme pode ser alugado por mais de um membro em um determinado período.

Pelo cenário acima, podemos ver que a natureza do relacionamento é muitos para muitos. Os bancos de dados relacionais não oferecem suporte a relacionamentos muitos para muitos. Precisamos introduzir uma entidade de junção . Essa é a função que a entidade MovieRentals desempenha. Tem uma relação um-para-muitos com a mesa de membros e outra relação um-para-muitos com a mesa de filmes.

Filmes e categorias de entidades

O que se segue é válido para filmes e categorias.

  • Um filme só pode pertencer a uma categoria, mas uma categoria pode ter mais de um filme.

Podemos deduzir disso que a natureza da relação entre categorias e tabela de filmes é de um para muitos.

Membros e entidades de pagamentos

O seguinte se aplica a membros e pagamentos

  • Um membro pode ter apenas uma conta, mas pode fazer vários pagamentos.

Podemos deduzir disso que a natureza do relacionamento entre membros e entidades de pagamento é de um para muitos.

Agora vamos criar um modelo EER usando MySQL Workbench

No ambiente de trabalho MySQL, clique no botão - '+'

Clique duas vezes no botão Adicionar Diagrama para abrir a área de trabalho dos diagramas ER.

A janela a seguir aparece

Vejamos os dois objetos com os quais trabalharemos.

  • O objeto de tabela nos permite criar entidades e definir os atributos associados a uma entidade particular.
  • O botão de relacionamento local nos permite definir relacionamentos entre entidades.

o membros' entidade terá os seguintes atributos

  • Número de membro
  • Nomes completos
  • Gênero
  • Data de nascimento
  • Endereço físico
  • endereço postal

Vamos agora criar a tabela de membros

1. Arraste o objeto da mesa do painel de ferramentas

2. Solte-o na área de trabalho. Uma entidade chamada tabela 1 aparece

3. Clique duas vezes nele. A janela de propriedades mostrada abaixo aparece

Próximo ,

  1. Alterar a tabela 1 para Membros
  2. Edite o idtable1 padrão para Membership_number
  3. Clique na próxima linha para adicionar o próximo campo
  4. Faça o mesmo para todos os atributos identificados na entidade dos membros.

Sua janela de propriedades agora deve ter esta aparência.

Repita as etapas acima para todas as entidades identificadas.

Seu espaço de trabalho do diagrama agora deve ser semelhante ao mostrado abaixo.

Vamos criar uma relação entre membros e locadoras de filmes

  1. Selecione a relação de lugar usando as colunas existentes também
  2. Clique em Membership_number na tabela Membros
  3. Clique em reference_number na tabela MovieRentals

Repita as etapas acima para outros relacionamentos. Seu diagrama ER agora deve ser semelhante a este -

Resumo

  • A forma completa do ER é Diagramas de Entidades e Relacionamentos. Eles desempenham um papel muito importante no processo de design do banco de dados. Eles servem como uma ferramenta de comunicação não técnica para pessoas técnicas e não técnicas.
  • Entidades representam coisas do mundo real; eles podem ser conceituais como um pedido de vendas ou físicos como um cliente.
  • Todas as entidades devem receber nomes exclusivos.
  • Os modelos ER também permitem que os projetistas do banco de dados identifiquem e definam as relações que existem entre as entidades.

Todo o modelo ER está anexado abaixo. Você pode simplesmente importá-lo no MySQL Workbench

Clique aqui para baixar o modelo ER