You are on page 1of 16

Modelo Entidade Relacionamento

⇒ Modelo Entidade-Relacionamento : Modelo de dados baseado


na percepção do mundo real que consiste em um conjunto de
objetos básicos chamados de entidades e relacionamentos

Entidade
Dept. CC
Professor n pertence 1
Departamento

Relacionamento
Professor

Visão do Visão do Mundo Real


Mundo Real Através do modelo E-R

Elementos do Modelo
Relacionamento
Entidade
P1

P2 D1

P3 D2

P4

P5

Conjunto de Conjunto de Conjunto de


Entidades Relacionamentos Entidades
Professor Pertence Departamento

Rafael Port da Rocha - Notas de Aula 1


Modelo Entidade Relacionamento
⇒ É um modelo conceitual, descrito de forma gráfica, que, após
definido, é mapeado para o modelo lógico de um banco de
dados relacional
⇒ Sua principal característica é a simplicidade, sendo baseado em
dois conceitos principais (entidade e relacionamento)
⇒ Conceitos Básicos
♦ Entidade:
• É um objeto (“coisa”) do mundo real, que existe e é
distinguível dos outros objetos
• Possui um conjunto de propriedades, e valores de algumas
dessas propriedades podem identificar unicamente essa
entidade
• Ex. de entidades: o José, o Departamento de Ciência da
Computação, etc...
• Ex. de propriedade de José: nome, idade, cpf (propriedade
que identifica unicamente José)

♦ Conjunto de Entidades:
• É um conjunto de entidades de um mesmo tipo, isto é,
possuem propriedades de mesmos tipos
• Ex.: o conjunto de entidade Professor contém um conjunto de
entidades que são professores e possuem as propriedades:
nome, endereço, cpf, matrícula na universidade
• Muitas vezes, usa-se o termo entidade para designar um
conjunto de entidades
• São graficamente representadas por retângulos

♦ Relacionamento:
• Um relacionamento é uma associação entre entidades
• Ex.: o professor José está associado ao departamento de
Ciência da Computação e às turmas de BD e Engenharia de
Software

Rafael Port da Rocha - Notas de Aula 2


Modelo Entidade Relacionamento
♦ Conjunto de relacionamento:
• É um conjunto de relacionamentos de mesmo tipo
• Ex.: Sendo os conjuntos de entidades Curso e Aluno, que
representam respectivamente alunos e cursos da
universidade, o relacionamento inscrição relaciona alunos a
cursos, indicando quais os cursos de um aluno e quais os
alunos de um curso
• São representados graficamente por losangos

⇒ Restrições de mapeamento
♦ Cardinalidade:
• Indica o número de entidades a que uma outra entidade pode
ser associada através de um conjunto de relacionamentos
• Um conjunto de relacionamentos R envolvendo os conjuntos
de entidades A e B, possui a cardinalidade:
 1-1, se uma entidade de A é associada a uma única
entidade de B
 1-n, se uma entidade de A é associada a várias entidades
de B, e se uma entidade de B é associada somente a uma
única entidade de A
 n-1, se uma entidade de B é associada a várias entidades
de A, e se uma entidade de A é associada somente a uma
única entidade de B
 n-n, se uma entidade de A é associada a várias entidades
de B e uma entidade de B é associada a várias entidades
de A

Rafael Port da Rocha - Notas de Aula 3


Modelo Entidade Relacionamento

♦ Cardinalidade máxima e mínima


• Versão do modelo E-R onde a cardinalidade é definida
através de valores mínimo e máximos
• Exemplo: Um conjunto de relacionamentos R envolvendo os
conjuntos de entidades A e B possui a cardinalidade
(1,1) - (0,120), que indica:
 que uma entidade A é associada no mínimo a nenhuma
entidade de B ou no máximo a 120 entidades de B
 que uma entidade de B é associada no mínimo e no
máximo a uma entidade de A

Professor n pertence 1
Departamento

P1

P2 D1

P3 D2

P4

P5

Rafael Port da Rocha - Notas de Aula 4


Modelo Entidade Relacionamento

Diagrama de ocorrências

Ana T10 José


CC
T20 Pedro
Paulo
T30 João
Maria
Física
T40

Curso Inscrição Aluno Frequenta Turma Ministra Prof.

Diagrama de Entidade-Relacionamento (E-R)

N N
Curso Aluno
Inscrição
N

Frequenta
N
N N
Professor Ministra Turma
(1,1) (0,5)

Leitura do diagrama E-R


• Um Professor ministra N turmas. Uma turma é
ministrada por um profesor
• Um Professor ministra de 0 a cinco turmas. Uma turma
é ministrada por um professor (versão cardinalidade
mínima-máxima)

Rafael Port da Rocha - Notas de Aula 5


Modelo Entidade Relacionamento
⇒ Relacionamentos n-ários
♦ Relacionamentos que associam n entidades
♦ Cardinalidade: em um relacionamento ternário envolvendo
entidades dos conjuntos A, B, C a cardinalidade refere-se a
pares de entidades

SM SuperR
Diagrama de
ocorrências POA XYZ

VaiVem

Cadeira Mesa Sofá

Diagrama de Entidade-Relacionamento (E-R)

N 1 Distribuidor
Cidade Distribuição

N
Produto

Leitura do diagrama E-R


• Um par (cidade-produto) está associado a um
distribuidor, isto é, um distribuidor tem exclusividade
na distribuição de um produto em uma cidade
• Um par (distribuidor-cidade) está associado a muitos
produtos, isto é, um distribuidor pode distribuir muitos
produtos em uma cidade

Rafael Port da Rocha - Notas de Aula 6


Modelo Entidade Relacionamento
⇒ Atributo
♦ Atributos associam informações a entidades e a
relacionamentos, identificando propriedades dessas entidades
e relacionamentos
♦ São representados graficamente através de círculos ligados à
coleções de entidades (muitas vezes são omitidos, sendo
descritos separadamente em um dicionário de dados)
⇒ Identificador de entidade:
♦ Conjunto de um ou mais atributos cujos valores servem para
distinguir uma entidade em uma coleção de entidades
♦ Os atributos da entidade que formam seu identificador são
representados graficamente através de círculos pretos
♦ O identificador de uma entidade é denominado chave primária
Data NomeProcurador

Curso Inscrição Aluno

CódigoC Nome Descrição CódigoA Nome Fone

Rafael Port da Rocha - Notas de Aula 7


Modelo Entidade Relacionamento
⇒ Exemplo de Conjunto de Relacionamentos com
Cardinalidade n-1
♦ Um (1) professor pertence a um (1) único departamento
♦ Um (1) departamento possui vários (n) professores

(4)
(4) Professor n (5) pertence 1
Departamento

CodP Nome Endereço CodDep Nome Sala


3)(6) (3) (3) (3)(6) (3) (3)

(5) (4)
(4)
P1
(1)

(1) P2 D1 (1)

P3 D2

P4
(1)
P5

(1)Entidade (4)Conjunto de Entidades


(2)Relacionamento (5)Conjunto de Relacionamentos
(3)Atributo (6)Identificador de Entidade

Rafael Port da Rocha - Notas de Aula 8


Modelo Entidade Relacionamento
⇒ Exemplo de Conjunto de Relacionamentos com
Cardinalidade n-n
♦ Um (1) aluno cursa várias (n) turmas
♦ Uma (1) turma é cursada por vários (n) alunos

n frequenta n (4)
(4) Aluno (5) Turma

Cod A Nome Endereço CodT Semestre Sala


(3)(6) (3) (3) (3)(6) (3) (3)

(5) (4)
(4)
A1

(1)
(1) A2 t1

A3 t2

A4

A5

(1)Entidade (4)Conjunto de Entidades


(2)Relacionamento (5)Conjunto de Relacionamentos
(3)Atributo (6)Identificador de Entidade

Rafael Port da Rocha - Notas de Aula 9


Modelo Entidade Relacionamento
⇒ Generalização/Especialização

C Permite atribuir propriedades


particulares a um subconjunto de
ocorrências de uma entidade genérica
Entidade genérica: C
A B Entidades especializadas: A e B
♦ Exemplos
CodP Nome Endereço
Turma

Pessoa
n participa n

n ministra n Professor Aluno

Cargo DtAdmiss Inscrição DtIngresso

Pessoa
Participa

P1 Turma
T1
P2
Aluno P3
T2

T3
P4
Ministra
P5
Professor
P6

P7

Rafael Port da Rocha - Notas de Aula 10


Modelo Entidade Relacionamento
CódP Nome Endereço

N Pessoa
t
1 N
Física Cont Jurídica
atendimento

CPF idade CGC InscriçãoEst


p
CodF

N
Funcionário

Vendedor Técnico

Comissão Especialidade

Rafael Port da Rocha - Notas de Aula 11


Modelo Entidade Relacionamento
⇒ Auto-relacionamento:
♦ relacionamento entre entidades de um mesmo conjunto de
entidades
♦ Ex: um Funcionário é chefiado por um Funcionário (seu chefe)
e um funcionário (chefe) chefia N funcionários

Funcionário Funcionário Chefe

José
Maria
1 N Paulo
chefe
Ana

Disciplina Disciplina Pré-Requisito

D10
D11
N N
pré-requisito
D12
D13
D14

OBS
A Disciplina D10 é pré-requisito para as disciplinas D12 e D13
A Disciplina D11 é pré-requisito para a disciplinas D13
A Disciplina D12 é pré-requisito para as disciplinas D14

Rafael Port da Rocha - Notas de Aula 12


Modelo Entidade Relacionamento

♦ Erros comuns:
• Definir para uma entidade um atributo que caracteriza
(pertence) uma outra entidade.
• Especificar uma entidade do mundo real de formas diferentes
em um mesmo modelo (como atributo e como entidade)
• Construir relacionamentos redundantes (relacionamentos que
podem ser eliminados sem perda de informações)
• Construir atributos redundantes (usar atributos calculados)

num de médicos
Hospital possui Depart.
(redundante, obtido
1 n através do número
1
lotação relacionamentos em
1 n n lotação)
trabEm nome do departamento
Médico
(redundante, obtido em
redundante Depart. através do
(obtido por relacionamento lotação)
possui e data
lotação) hora

⇒ Estratégia de modelagem “de cima para baixo” (top-down)

Rafael Port da Rocha - Notas de Aula 13


Modelo Entidade Relacionamento
♦ (1) Modelagem superficial: Identificação das entidades,
identificação dos relacionamentos e hierarquias de
generalização/especialização, cardinalidades máximas,
determinação dos atributos, determinação dos identificadores de
entidades e relacionamentos
♦ (2) Modelagem detalhada: Domínios dos atributos,
cardinalidades mínimas, restrições de integridades não
representadas no modelo
♦ (3) Validação do modelo: verificar construções redundantes
⇒ Estratégia de modelagem “de dentro para fora” (inside-out)
♦ identificar primeiro conceitos (entidades) mais importantes
(centrais) e adicionar gradativamente conceitos periféricos
(atributos, entidades relacionadas,
generalizações/especializações)
♦ passos semelhantes à abordagem top-down

Rafael Port da Rocha - Notas de Aula 14


Modelo Entidade Relacionamento
⇒ Notação alternativa, utilizada em ferramentas CASE

Cliente Funcionário
♦ CodC Atende ♦ CodF
♦ Nome É atendido por
♦ Nome
♦ Endereço
♦ Endereço
Pessoa Vendedor
♦ CPF ♦ comissão
♦ Idade

É representada por Técnico


Empresa Contato ♦ especialid
♦ CGC Representa ♦ ...
♦ incrEst
Outro
Funcionário
Min.: 1, Max.: 1
Min.: 0, Max.:1

Min.: 1, Max.:n

Min.: 0, Max.:n

♦ Não permite relacionamentos maiores que binários (que


devem ser definidos através de entidades)
♦ Não permite relacionamentos que contém atributos (estes
relacionamentos devem ser definidos através de entidades)
♦ Não permite relacionamentos de generalizalção /especializ.
do tipo parcial (entidades do conjunto genérico formam uma
entidade específica. ex.: outros funcionários representam
funcionários que não são técnicos nem vendedores)

Rafael Port da Rocha - Notas de Aula 15


Modelo Entidade Relacionamento

BIBLIOGRAFIA
DATE, C. J. An Introduction to database systems. Reading: Addison Wesley,
1995.
ELMASRI, R.; NAVATHE, S.B. Fundamentals of database systems. Redwood
City:Benjamin Cummings, 1994.
HEUSER, C.A. Projeto de banco de dados. Porto Alegre:Sagra Luzzatto, 1999.
KORTK, H.; SILBERSCHATZ, A. Sistemas de bancos de dados. Makron
Books, 1994.
ULLMAN, J. D. Principles of database and knowledge-base systems.
Rockville:Computer Science Press, 1989.

Rafael Port da Rocha - Notas de Aula 16

You might also like