A modelagem de dados é o processo de criar uma representação visual dos dados e suas relações em um banco de dados. Uma das ferramentas mais comumente usadas para modelagem de dados é o Diagrama de Relacionamento de Entidades (ERD), que utiliza símbolos gráficos para representar entidades, atributos e relações. Neste artigo, exploraremos o processo de modelagem de dados usando um ERD e forneceremos exemplos de como ele pode ser usado em cenários do mundo real.
O que é um Diagrama de Relacionamento de Entidades (ERD)?
Um ERD é uma representação gráfica de entidades, seus atributos e as relações entre elas. Entidades são objetos ou conceitos que são representados no banco de dados, como clientes, pedidos ou produtos. Atributos são características ou propriedades das entidades, como nome, endereço ou preço. Relações são associações entre entidades, como um cliente fazendo um pedido.
Os ERDs geralmente são compostos pelos seguintes componentes:
- Entidades: representadas como retângulos com o nome da entidade escrito dentro.
- Atributos: representados como ovais conectados à entidade a que pertencem por uma linha.
- Relações: representadas como losangos que conectam entidades.
Os três tipos de relações que podem existir entre entidades são:
- Um para Um (1:1): onde uma instância de uma entidade está associada a uma instância de outra entidade.
- Um para Muitos (1:N): onde uma instância de uma entidade está associada a múltiplas instâncias de outra entidade.
- Muitos para Muitos (N:M): onde múltiplas instâncias de uma entidade estão associadas a múltiplas instâncias de outra entidade.
Exemplo de Modelagem de Dados usando ERD
Vamos considerar um exemplo de uma livraria online que vende livros para clientes. A livraria possui várias categorias de livros e um grande número de clientes que podem fazer pedidos. Para modelar este sistema usando um ERD, podemos começar identificando as entidades, atributos e relações envolvidas.
Entidades:
- Livro: Representa um livro na livraria. Contém atributos como título, autor, ISBN e preço.
- Categoria: Representa uma categoria ou gênero de livros na livraria. Contém atributos como nome e descrição.
- Cliente: Representa um cliente que se cadastrou na livraria. Contém atributos como nome, endereço e e-mail.
- Pedido: Representa um pedido feito por um cliente. Contém atributos como data do pedido e preço total. Também possui uma referência de chave estrangeira para a entidade Cliente, indicando qual cliente fez o pedido.
- Livro_Categoria: Representa a relação muitos para muitos entre livros e categorias. Contém referências de chave estrangeira para as entidades Livro e Categoria.
- Pedido_Livro: Representa a relação muitos para muitos entre pedidos e livros. Contém referências de chave estrangeira para as entidades Pedido e Livro.
Relações:
- Um livro pode pertencer a múltiplas categorias (Muitos para Muitos).
- Uma categoria pode ter múltiplos livros (Um para Muitos).
- Um cliente pode fazer múltiplos pedidos (Um para Muitos).
- Um pedido pode conter múltiplos livros (Muitos para Muitos).
Com essas entidades, atributos e relações em mente, podemos criar um ERD para o sistema de livraria online. O ERD teria algo assim:

Neste diagrama ERD, podemos ver que a entidade Livro tem uma relação muitos para muitos com a entidade Categoria, o que significa que um livro pode pertencer a múltiplas categorias, e uma categoria pode ter múltiplos livros. A entidade Cliente tem uma relação um para muitos com a entidade Pedido, o que significa que um cliente pode fazer múltiplos pedidos, mas cada pedido pertence apenas a um cliente. Por fim, a entidade Pedido tem uma relação muitos para muitos com a entidade Livro, o que significa que um pedido pode conter múltiplos livros, e um livro pode aparecer em múltiplos pedidos.
Gerar o Código SQL do Esquema do Banco de Dados com o Visual Paradigm
Tabela livro {
id int [pk, incremento]
titulo varchar
autor varchar
isbn varchar
preco float
}Tabela categoria {
id int [pk, incremento]
nome varchar
descricao varchar
}Tabela cliente {
id int [pk, incremento]
nome varchar
endereco varchar
email varchar
}Tabela pedido {
id int [pk, incremento]
data_pedido datetime
preco_total float
id_cliente int [ref: > cliente.id]
}Tabela livro_categoria {
id_livro int [ref: > livro.id]
id_categoria int [ref: > categoria.id]
}Tabela pedido_livro {
id_pedido int [ref: > pedido.id]
id_livro int [ref: > livro.id]
}
Conclusão
A modelagem de dados usando diagramas ER é um processo importante que nos ajuda a visualizar e compreender as relações entre entidades em um banco de dados. Ao identificar entidades, atributos e relações, podemos criar um diagrama ER que representa os dados e sua estrutura de forma clara e concisa. Isso nos permite projetar e manter bancos de dados eficientes e eficazes que possam atender às necessidades da organização.











