Você está na página 1de 22

Diagrama Entidade

Relacionamento

Modelo Conceitual
O que é DER/MER?

• É uma representação gráfica da estrutura conceitual de dados;

• Representa as entidades, atributos e relações importantes de um


sistema;

• Ajuda a visualizar e compreender as relações entre entidades e como


elas se relacionam entre si, o que é importante na fase inicial de
design de um sistema de banco de dados.
Conceitos importantes!
• Entidade ou tabela: objeto ou evento do mundo real que desejamos manter registros
em um BD; (exemplo: carro, aluno, produto, vendedor)

• Atributo ou campos: propriedade ou característica que descreve uma entidade; são as


colunas da tabela; (exemplo: código, descrição do produto, preço do produto)

• Relacionamentos: uma entidade nunca está sozinha, elas são associações; geralmente
acontecem entre duas ou várias tabelas!

• Graus de relacionamento: quantidade de entidades ligadas a um relacionamento;


unário(incomum), binário (mais comum), ternário e mais (que são incomuns, também!)
Representações

• As entidades são representadas


como retângulos, os atributos são
representados como linhas que se
conectam a entidades, e as
relações são representadas como
setas que ligam as entidades.
Entidade
• A entidade é representada como um retângulo com o nome da entidade escrito
dentro dele;
• A entidade é uma representação abstrata de um objeto, conceito ou evento no
mundo real que possui propriedades únicas e relacionamentos com outras
entidades;
• Além do nome da entidade, o retângulo pode conter outras informações
importantes, como: chaves primárias, chaves estrangeiras, tipos de dados e
outras restrições ou regras de negócios associadas às entidades.
Antes de continuar: conceitos importantes!

• Chave primária / primary key (pk) / atributo chave: identifica,


exclusivamente, um registro. É um campo de valor único, sem
repetição. Nas tabelas, esse campo, geralmente é o código/id;

• Chave estrangeira / foreing key (fk) / chave secundária: atributo


presente em uma entidade que indica um relacionamento entre as
tabelas. Ela é a chave primária da outra tabela!
Atributos

• Os atributos são representados como elipses conectadas ao retângulo


da entidade por uma linha;

• Os atributos representam as características ou propriedades das


entidades, como nome, data, número, endereço, etc;

• Cada atributo é nomeado e pode ter um tipo de dados associado (por


exemplo, texto, data, número, etc.).
Relacionamento

• As relações entre entidades são representadas como linhas que


conectam os retângulos de entidades.

• As linhas são rotuladas com o tipo de relacionamento entre as


entidades, como "tem", "possui", "é parte de", "é um", "é associado
a", etc.
Pensando...

• Um cliente pode ter mais de um vendedor?

• Um vendedor pode ter mais de um cliente?

• Pode existir um vendedor sem um cliente?

• Pode existir um cliente sem vendedor?


Cardinalidades

• É uma propriedade de um relacionamento em um DER que descreve

a natureza e o número de ocorrências entre as entidades associadas;

• Permite especificar quantas instâncias de uma entidade podem estar

associadas a quantas instâncias da outra entidade;


Cardinalidade mínima e máxima

• Especificam os limites inferiores e superiores da ocorrência de um


relacionamento entre entidades.

• A cardinalidade mínima indica o número mínimo de ocorrências de uma


entidade que deve estar relacionada a uma instância da outra entidade.

• Pode ser expressa como zero (0), o que significa que a ocorrência é
opcional, ou um (1), o que significa que é obrigatória.
Cardinalidade mínima e máxima

• A cardinalidade máxima indica o número máximo de ocorrências de


uma entidade que podem estar relacionadas a uma instância da outra
entidade.

• Pode ser expressa como um número inteiro positivo (como 2, 3, 4,


etc.), indicando um limite máximo, ou como um asterisco (*) ou uma
letra "N", indicando que não há limite superior para o número de
ocorrências.
Cardinalidade mínima e máxima
• A cardinalidade mínima e máxima, juntas, especificam as condições sob as quais
uma entidade está relacionada a outra entidade.

• Cardinalidade 1: representa que uma instância de uma entidade está associada a


uma e somente uma instância da outra entidade. É representada pelo número 1.

• Cardinalidade N: representa que uma instância de uma entidade pode estar


associada a várias instâncias da outra entidade. É representada pelo símbolo "N".
Cardinalidade

• Por exemplo, em um DER que representa um relacionamento entre as


entidades "Cliente" e "Pedido", a cardinalidade pode ser expressa da
seguinte forma:

• "Um cliente pode fazer vários pedidos" (cardinalidade 1:N), "Cada


pedido é feito por um e somente um cliente" (cardinalidade N:1), ou
"Vários clientes podem fazer vários pedidos" (cardinalidade N:M).
Cardinalidades

• Existem três principais tipos de relacionamentos que podem ser


representados em um DER:

• Relacionamento Um-para-um (1:1)

• Relacionamento Um-para-muitos (1:N)

• Relacionamento Muitos-para-muitos (N:M)


Relacionamento Um-para-um (1:1)

• É um tipo de relacionamento em que cada instância de uma entidade


está associada a exatamente uma instância da outra entidade.

• Por exemplo, uma pessoa pode ter apenas um passaporte e cada


passaporte é emitido para uma única pessoa.
Relacionamento Um-para-muitos (1:N)

• É um tipo de relacionamento em que cada instância de uma entidade


pode estar associada a várias instâncias da outra entidade, mas cada
instância da outra entidade está associada a no máximo uma
instância da primeira entidade.
Relacionamento Muitos-para-muitos (N:M)

• é um tipo de relacionamento em que cada instância de uma entidade


pode estar associada a várias instâncias da outra entidade e vice-
versa.
Prática

• Considere um sistema de gerenciamento de vendas de uma loja. A


loja vende produtos que possuem um código, nome, descrição, preço
e quantidade em estoque. Cada venda é associada a um cliente e
pode conter vários produtos. Os clientes têm um código, nome,
endereço e número de telefone. Modele essa situação usando DER.
Prática

• Considere um sistema de gerenciamento de uma escola. A escola


possui várias turmas, cada uma com um número e uma quantidade
de alunos matriculados. Cada turma tem um professor responsável,
que é um funcionário da escola. Cada aluno tem um nome, um
endereço e um número de matrícula. Cada professor tem um nome,
um endereço e um número de registro na escola. Modele essa
situação usando DER.
Prática

• Considere um sistema de gerenciamento de uma rede social. A rede


social possui vários usuários, cada um com um nome, um endereço
de email e uma senha. Cada usuário pode ter vários amigos, e cada
amizade é bidirecional. Cada usuário pode postar várias mensagens, e
cada mensagem tem um título, um corpo e uma data de postagem.
Cada usuário pode curtir várias mensagens de outros usuários.
Modele essa situação usando DER.
Prática

• Considere um sistema de gerenciamento de um banco. O banco


possui várias contas bancárias, cada uma com um número de conta,
um saldo e um titular. Cada titular tem um nome, endereço e número
de CPF. Cada conta bancária pode ter várias transações, e cada
transação é associada a uma conta bancária. Cada transação tem um
valor, uma data e uma descrição. Modele essa situação usando DER.

Você também pode gostar