O que é modelagem ER? Aprenda com o exemplo
O que é modelagem ER?
Modelo de relacionamento da entidade (Modelagem ER) é uma abordagem gráfica para design de banco de dados. É um modelo de dados de alto nível que define elementos de dados e seu relacionamento para um sistema de software específico. Um modelo ER é usado para representar objetos do mundo real.
An Entidade é uma coisa ou objeto no mundo real que é distinguível 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.
Vamos considerar nosso primeiro exemplo novamente. Um funcionário de uma organização é uma entidade. Se “Peter” é um programador (um empregado) a Microsoft, ele pode ter atributos (propriedades) como nome, idade, peso, altura, etc. É óbvio que elas 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 também. Por exemplo, a idade de Peter tem um único valor. Mas sua propriedade “números de telefone” pode ter vários valores.
As entidades podem ter relações um com o outro. Vamos considerar o exemplo mais simples. Suponha que cada Microsoft O programador recebe um computador. É claro que isso Computador de Pedro também é uma entidade. Peter está usando esse computador, e o mesmo computador é usado por Peter. Em outras palavras, existe uma relação mútua entre Peter e seu computador.
In Modelagem de relacionamento de entidade, modelamos entidades, seus atributos e relacionamentos entre entidades.
Modelo aprimorado de relacionamento entre entidades (EER)
O modelo Enhanced Entity Relationship (EER) é um modelo de dados de alto nível que fornece extensões ao original Relacionamento de entidade(ER) modelo. Os modelos EER suportam projetos mais detalhados. A Modelagem EER surgiu como uma solução para modelagem de bancos de dados altamente complexos.
EER usa notação UML. UML é a sigla para Linguagem de modelagem unificada; é uma linguagem de modelagem de uso geral usada no projeto de 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 crie o banco de dados e todos os seus objetos sem 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 forma diferente. Se esta situação não for controlada, 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 videoteca “MyFlix”
Vamos agora trabalhar com o sistema de banco de dados MyFlix Video Library para ajudar a entender o conceito de diagramas ER. Usaremos esse banco de dados para todas as práticas no restante deste tutorial
MyFlix é uma entidade empresarial que aluga filmes aos seus membros. MyFlix tem armazenado seus registros manualmente. A administração agora quer passar para um DBMS
Vejamos as etapas para desenvolver o diagrama EER para este banco de dados-
- Identifique as entidades e determine os relacionamentos que existem entre elas.
- Cada entidade, atributo e relacionamento deve ter nomes apropriados que possam ser facilmente compreendidos também por pessoas não técnicas.
- Os relacionamentos não devem estar conectados diretamente entre si. Os relacionamentos devem conectar entidades.
- Cada atributo em uma determinada entidade deve ter um nome exclusivo.
Entidades na biblioteca “MyFlix”
As entidades a incluir no nosso Diagrama ER estamos;
- 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 associados.
- Pagamentos – esta entidade deterá informações sobre os pagamentos efetuados pelos associados.
Definindo os relacionamentos entre entidades
Membros e filmes
O seguinte é válido em relação às interações entre as duas entidades.
- Um associado pode alugar mais de um filme em um determinado período.
- Um filme pode ser alugado por mais de um associado em um determinado período.
A partir do cenário acima, podemos ver que a natureza do relacionamento é de muitos para muitos. Os bancos de dados relacionais não suportam relacionamentos muitos para muitos. Precisamos introduzir uma entidade de junção. Este é o papel que a entidade MovieRentals desempenha. Possui um relacionamento um-para-muitos com a tabela de membros e outro relacionamento um-para-muitos com a tabela movies.
Entidades de filmes e categorias
O seguinte é válido sobre 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 é válido sobre membros e pagamentos
- Um membro pode ter apenas uma conta, mas pode fazer vários pagamentos.
Podemos deduzir disto que a natureza da relação entre membros e entidades de pagamentos é de um para muitos.
Agora vamos criar o modelo EER usando MySQL Workbench
De acordo com o relatório MySQL bancada de trabalho, clique no botão “+”
Double clique no botão Adicionar Diagrama para abrir o espaço de trabalho para diagramas ER.
A seguinte janela aparece
Vejamos os dois objetos com os quais trabalharemos.
O objeto tabela nos permite criar entidades e definir os atributos associados a uma entidade específica.
O botão colocar relacionamento nos permite definir relacionamentos entre entidades.
A 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 tabela do painel de ferramentas
2.Solte-o na área de trabalho. Uma entidade chamada tabela 1 aparece
3.Double Clique nisso. A janela de propriedades mostrada abaixo aparece
Próximo ,
- Alterar tabela 1 para Membros
- Edite o idtable1 padrão para subscription_number
- Clique na próxima linha para adicionar o próximo campo
- Faça o mesmo para todos os atributos identificados na entidade dos membros.
Sua janela de propriedades agora deve ficar assim.
Repita as etapas acima para todas as entidades identificadas.
Seu espaço de trabalho do diagrama agora deve se parecer com o mostrado abaixo.
Vamos criar relacionamento entre membros e locadoras de filmes
- Selecione o relacionamento do local usando colunas existentes também
- Clique em member_number na tabela Membros
- Clique em reference_number na tabela MovieRentals
Repita as etapas acima para outros relacionamentos. Seu diagrama ER agora deve ficar assim –
Resumo
- A forma completa de ER é Diagramas de Entidades e Relacionamentos. Desempenham um papel muito importante no projeto de banco de dados processo. Eles servem como uma ferramenta de comunicação não técnica para pessoas técnicas e não técnicas.
- As 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 de 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 em MySQL Workbench
Clique aqui para baixar o modelo ER