Escolar Documentos
Profissional Documentos
Cultura Documentos
Modelo Entidade-Relacionamento
Assunto Página
1. Introdução 4
2. Entidades 5
2.1 Atributos 7
3. Relacionamentos 11
3.1 Cardinalidade 12
3.3 Agregação 15
4.4 Agregação 21
4.5 Generalização/Especialização 23
5. Referências 24
1. Introdução
A modelagem entidade-relacionamento, modelo entidade-
relacionamento ou apenas MER, é um modelo conceitual utilizado para fazer
o levantamento de requisitos de um projeto de banco de dados.
O MER é um modelo de alto nível que independe do SGBD que será
usado para o projeto. Na verdade, nesse ponto, pode ainda nem haver
definição de quais ferramentas serão usadas. O objetivo é puramente
descrever os fenômenos e processos que se quer modelar.
O processo de criação de um MER passa pelo uso de duas definições:
Entidades e Relacionamentos. As entidades são as “coisas” que se quer
descrever, enquanto os relacionamentos definem como as entidades se
relacionam entre si.
2. Entidades
O primeiro conceito importante para o MER é o conceito de Entidade.
Uma entidade é uma representação abstrata de um objeto utilizada para
descrevê-lo em um MER.
Cada entidade é composta por um conjunto de valores que a definem,
chamados atributos. As entidades podem ser classificadas em: Entidades
Fortes e Fracas. Uma entidade é dita forte, quando ela independe de
outras entidades para existir. Por outro lado, uma entidade é dita fraca,
quando ela precisa de outras entidades para existir.
Entidade
Forte
Dois tipos
Fraca
MÉDICOS
Cria-se uma
Entidade
É uma ENTIDADE FORTE pois
existe sem necessidade de
outra entidade
Código
Nome
Atributos da
MER em um Entidade Data de nascimento
consultório MÉDICOS
médico
CFM
especialidade
CONSULTAS
Cria-se uma
Entidade ENTIDADE FRACA pois
precisa da entidade Médicos
(não pode marcar uma consulta
sem um médico associado)
2.1 Atributos
Como vimos na seção anterior, os atributos (ou campos) descrevem
as entidades. Esses atributos podem ser de diversos tipos, e é importante
conhecer as principais classificações deles.
Com relação à obrigatoriedade, um atributo pode ser classificado
como obrigatório ou opcional. Como você deve imaginar, atributos
obrigatórios precisam necessariamente ter um valor associado. Atributos
opcionais podem assumir valores nulos. Por exemplo, na entidade Consultas,
o atributo médico responsável é obrigatório. Mas se pensarmos, por exemplo,
em uma clínica que atenda tanto presencialmente como virtualmente, o
atributo local é do tipo opcional, pois consultas virtuais não utilizam um local
físico.
Ex. Atributo
Médico
Obrigatório Responsável
em um
atendimento
Atributos Obrigatoriedade
Ex. Local
físico
Opcional (se tiver
atendimento
virtual)
Atributos Valores
Ex. Endereço
Compostos (pois pode derivar outros
atributos como rua,
bairro, cidade, pais, CEP)
Ex. CFM
Mono (cada médico só
tem 1)
Atributos Valores
Ex. Especialidade
Multi (cada médico pode
ter +1)
Ex. CFM
Atributos Função Nominativos (identificam uma
entidade)
Por fim, mais duas classificações são importantes para esse assunto.
Os atributos determinantes são os atributos que identificam univocamente
uma instância da entidade, como o atributo CFM na classe Médicos. Esses
atributos também são chamados de Chaves, e tem um papel importantíssimo
nos relacionamentos, que veremos na próxima seção. Os atributos também
podem ser derivados. Os atributos derivados são atributos que podem ser
calculados a partir de outros atributos e não precisam ser armazenados. Por
exemplo, idade é um atributo derivado da data de nascimento.
Atributos
Ex. Idade é
derivado de data de
nascimento
derivados (calculados a partir de
outros atributos e não
precisam ser
armazenados)
Atributo
Referenciais
3. Relacionamentos
Agora que já aprendemos sobre entidades, o segundo passo para
entendermos o MER é aprender como elas se relacionam. Os
relacionamentos são responsáveis por essa informação. O
relacionamento pode ser definido como uma estrutura que indica uma
associação entre duas ou mais entidades.
Um relacionamento pode relacionar um número arbitrário de entidades.
Denomina-se como relacionamento binário, o relacionamento que associa
apenas duas entidades. Relacionamento ternário, é o que relaciona apenas
três entidades. A classificação segue esse padrão indefinidamente. O número
de entidades que um relacionamento está associado chama-se grau de um
relacionamento.
N-ário
3.1 Cardinalidade
Uma definição importantíssima e bastante cobrada em concurso é a de
cardinalidade de um relacionamento. A cardinalidade indica como duas
entidades estão relacionadas. Existem três tipos de cardinalidade:
• 1:1 (lê-se um para um): Indica que o relacionamento entre duas
entidades permite que uma instância da primeira entidade se ligue
unicamente à uma instância da segunda entidade, e vice-versa.
• 1:n (lê-se um para muitos): Se duas entidades, A e B, possuem um
relacionamento desse tipo, uma instância de A pode se ligar à várias
instâncias da entidade B. As instâncias de B, entretanto, podem se ligar
apenas à uma instância de A.
• n:n (lê-se muitos para muitos): Se duas entidades, A e B, possuem um
relacionamento desse tipo, instâncias da entidade A podem se ligar à mais de
uma instância de B e vice-versa.
PARTICIPAÇÃO
PARCIAL TOTAL
3.3 Agregação
Uma importante definição dentro do MER é o conceito de agregação.
Por definição, é impossível no MER que um relacionamento esteja relacionado
com um outro relacionamento. O modelo prevê apenas relacionamentos entre
duas entidades.
Quando uma situação desse tipo acontece, lança-se mão da
agregação. A agregação agrupa um relacionamento dentro de um bloco,
como se fosse uma entidade, dando origem à um novo tipo de entidade,
chamada Entidades Associativas.
Uma entidade associativa possui as mesmas características de uma
entidade comum e, portanto, pode se relacionar com outras entidades. Um
exemplo ilustrativo de quando a agregação pode ser usada é o caso de uma
empresa que vende um produto qualquer. Dentro do MER dessa empresa,
existe a entidade Produto e a entidade Vendas, que possuem um
relacionamento entre si, uma vez que uma venda só existe se um produto for
vendido.
A empresa decidiu então que, sempre que uma venda é feita, o
funcionário ganha uma comissão proporcional ao valor do produto vendido.
Uma nova entidade chamada Comissões é criada, porém esta precisaria se
ligar ao relacionamento criado entre Produto e Vendas. Assim, cria-se uma
agregação no relacionamento, transformando-o em uma entidade
associativa, que pode agora se ligar à entidade Comissões.
AGREGAÇÃO
Por exemplo, uma empresa de vendas pode ter uma entidade chamada
Cliente, entretanto pode vender tanto para pessoas físicas quanto pessoas
jurídicas. Nesse caso, cada tipo de cliente pode ter atributos diferentes. Para
pessoas físicas, o identificador pode ser o CPF e para jurídicas o CNPJ. Assim,
criar subclasses dentro da entidade Cliente pode ser necessário.
A operação de generalização/especialização pode ser dividida quanto a
sua participação e compartilhamento. Quanto a participação, a
generalização/especialização pode ser:
• Total: Quando todas as instâncias precisam, necessariamente, estar
dentro de uma ou mais subclasses.
• Parcial: Quando não há obrigatoriedade de as instâncias da
superclasse estarem dentro de uma das subclasses
Já em relação ao compartilhamento, a generalização/especialização pode
ser:
• Exclusiva: Quando uma instância da superclasse pode estar dentro de
no máximo uma subclasse.
• Não-exclusiva: Permite que instâncias da superclasse possam estar
em mais de uma subclasse.
Entidades Quadrados
Elipses
Representação
das Atributos
ENTIDADES
ligados às suas
respectivas
entidades
nome de um
Chave atributo estiver
sublinhado
Representação de
Relacionamentos Losango
RELACIONAMENTOS
A notação com duas linhas também é usada quando uma das entidades
é fraca em relação à outra. Lembram do conceito de entidades fortes e fracas?
Entidades fortes podem existir sem que suas instâncias estejam ligadas à
alguma instância de outra classe. Entidades fracas precisam dessa ligação,
obrigatoriamente, para existir.
Participação
1 linha
PARCIAL
Representação de
RELACIONAMENTO
Participação
2 linhas
TOTAL
4.4 Agregação
A notação para agregação é a de um losango rodeado por um
quadrado, indicando uma entidade associativa (relacionamento
transformado em entidade).
Losango
Representação de
Agregação rodeado por um
RELACIONAMENTOS quadrado
negócio apresentados pelo cliente, que era referenciar as leis ao par ordenado
representado pelo relacionamento Pesquisa. A solução DER adequada
desenhada por ele, posteriormente, foi
a) transformar os relacionamentos Pesquisa e Referência em um único
relacionamento ternário.
b) transformar o relacionamento Pesquisa em entidade associativa.
c) relacionar a entidade Lei com a entidade Processo, diretamente.
d) relacionar a entidade Lei com a entidade Cidadão, diretamente.
e) transformar o relacionamento Pesquisa em entidade fraca de Processo.
Resolução:
Aprendemos que sempre que é necessário ligar dois relacionamentos, uma
entidade associativa deve ser criada. Por isso, transformar o relacionamento
Pesquisa em entidade associativa é a alternativa correta.
Gabarito: B
4.5 Generalização/Especialização
Por fim, a notação para a criação de subclasses após utilizar
generalização/especialização é também simples de entender. Vamos
supor que, por qualquer motivo, a entidade Paciente tivesse que ser dividida
em homens e mulheres. Nesse caso, a generalização/especialização é
representada por um triângulo. Das pontas do triângulo saem novas linhas
indicando as novas entidades.
Lembrando que os modelos de agregação/generalização possuem
algumas divisões que influenciam sua notação. Por exemplo, sempre que a
generalização/especialização for total, a linha que liga a superclasse ao
triângulo deve ser dupla. Já quando a generalização/especialização for
exclusiva, a notação é incluir um d, no centro do triângulo que divide as
subclasses.
Triângulo
"d" no centro do
Exclusiva
triângulo
5. Referências
• Modelo Entidade-Relacionamento (MER) e Diagrama Entidade-
Relacionamento (DER). Disponível em:
https://www.devmedia.com.br/modelo-entidade-relacionamento-mer-e-
diagrama-entidade-relacionamento-der/14332
• SIQUEIRA, F. Banco de Dados I – Aula 4: Modelo Entidade e
Relacionamento. Disponível em:
https://sites.google.com/site/uniplibancodedados1/aulas/aula-4---modelo-
entidade-e-relacionamentos
• FILETO, R. O Modelo Entidade-Relacionamento. Disponível em:
https://www.inf.ufsc.br/~r.fileto/Disciplinas/INE5423-2010-1/Aulas/02-
MER.pdf