Você está na página 1de 10

03/08/2015

Modelo Entidade e Relacionamento


(MER)

Introduo ao Modelo de
Entidade e Relacionamento
(MER)

um modelo conceitual e deve estar o mais


prximo possvel da viso que o usurio
tem dos dados, no se preocupando em
representar como estes dados estaro
realmente armazenados.

Modelo

baseado na percepo do mundo


real, que consiste em um conjunto de
objetos bsicos chamados entidades e nos
relacionamentos entre esses objetos.

Objetivos:

Exemplo

Descrever

quais dados devem ser


armazenados pela aplicao e quais desses
dados se relacionam.

Facilitar

o projeto de banco de dados,


possibilitando a especificao da estrutura
lgica geral do banco de dados.

MER

apresentado utiliza uma


representao grfica chamada de Diagrama
de Entidade e Relacionamento (DER).

MER define os conceitos que sero


aplicados no desenvolvimento de DER. O
DER ser utilizado para representar
graficamente o conjunto de objetos do
MER, tais como entidade, atributos,
atributos-chave, relacionamento,
restries estruturais, etc.

Diagrama Entidade-Relacionamento DER


A estrutura lgica geral de um banco de
dados pode ser expressa graficamente por
um Diagrama Entidade- Relacionamento.
Componentes

do DER (Peter Chen):


Retngulos: representam conjuntosentidade
Elipses:

representam atributos

03/08/2015

Losangos:

representam conjuntosrelacionamento

ligam atributos a conjuntosentidade e conjuntos-entidade a


conjuntos-relacionamento

Entidade e Atributos

Linhas:

Uma entidade representa um conjunto de


objetos do mesmo tipo do mundo real e
sobre os quais se pretende armazenar
dados.

Uma entidade representada graficamente


por um retngulo com o nome da entidade
dentro do retngulo.
Exemplo:

PROFESSOR

Atributo

Elemento

de dado que contm informao


que descreve uma entidade.
O atributo pode ser representado
graficamente por uma elipse com o nome
do atributo dentro da elipse. A elipse
ligada entidade por uma linha.
PROFESSOR
Telefone_prof

CPF_prof
Matricula_prof

Os

Nome_prof

tipos de dados dependem do SGBD

(sistema de gerenciamento do banco de dados)

que o desenvolvedor est utilizando.


tipos de dados como: inteiro,
caracter, real (ou float), data e hora.

Disponibilizam

Depois

de definido o tipo de atributo podese definir o tamanho mximo que o atributo


vai permitir armazenar.

Exemplo: atributo nome do tipo caracter


(500), armazena no mximo 500 caracteres.

Uma entidade deve ter ao menos dois


atributos, se possui apenas um atributo no
entidade e esse nico atributo deveria estar em
alguma outra entidade do modelo.

Um atributo possui um tipo de dado que


representa os valores permitidos para aquele
atributo. Esse tipo de dados d-se o nome de
domnio do atributo.
Exemplo: entidade cadeira, atributos (nmero
de pernas, cor, tamanho, peso, altura, tecido,
etc).
O atributo nmero de pernas do tipo
inteiro, ou seja, s permite que sejam
armazenados valores inteiros para esse
atributo.

Atributos podem ser divididos em 6


categorias.
Simples;
Compostos;
Monovalorado;
Multivalorado;
Derivado;
Nulo.
Os atributos podem pertencer a mais de uma
categoria ao mesmo tempo. Isso significa que
comum um nico atributo ser simples,
monovalorado e derivado ao mesmo tempo.

03/08/2015

Atributo Simples

o atributo indivisvel, que no pode ou


no deve ser decomposto.

Exemplo: CPF, nmero da matricula, RG,


preo de venda.

Atributo Composto

o atributo que pode ser decomposto


em outros atributos simples.
Exemplo: o atributo endereo pode ser
decomposto em nome da rua, numero e
complemento, cidade, estado

Rua

Nmero
Complemento

Atributo Monovalorado

Atributo Multivalorado

Permite

Permite

Exemplo: CPF monovalorado porque


uma pessoa possui apenas um nmero de
CPF.

Exemplo: e-mail pode ser multivalorado


uma vez que uma pessoa possui,
normalmente, mais de um endereo de email.

Atributo Nulo

Atributo Derivado

Permite

apenas o armazenamento de um
valor por vez.

que seja inserido um valor nulo a


ele. Representa a inexistncia de um
valor. Significa que o usurio no precisa
cadastrar um valor para o atributo e pode
deix-lo vazio.

armazenar mais de um valor ao


mesmo tempo no mesmo campo.

o atributo cujo valor para ele deriva de


outro(s) atributo(s).

Exemplo:

03/08/2015

Representaes de Atributos

Atributo Simples
e Monovalorado

Atributo Chave (Nulo)

Atributo Multivalorado

Chave Primria
Uma

Chave Primria (Primary Key) um


atributo da entidade que identifica apenas um
objeto dessa entidade.
O valor no pode ser nulo e nem repetido.
Ao se definir uma chave primria est-se
definindo uma restrio de integridade, que
deve ser obedecida em todos os estados
vlidos do BD.
Ex.:

Atributo Composto
Atributo Derivado

Chaves Candidatas
Atributos habilitados a se tornarem
chave primria
Observao:
Somente uma chave candidata se
tornar primria; o restante passa a ser
considerada como chave alternativa

Exemplo: Escolha de Chave Primria


Atributos da Tabela ELEITOR

Nome do Eleitor
Junta Eleitoral

Seo Eleitoral
Nmero de Identidade
Nmero de CPF
Nmero do Ttulo de Eleitor

Tabela: ELEITOR

Chaves Candidatas:
Nmero do Ttulo de Eleitor
Nmero de Identidade
Nmero de CPF

Chave Primria Escolhida:


Nmero do Ttulo de Eleitor

Chave Estrangeira
Mecanismo

que permite a implementao


dos relacionamentos em um BDR

As

chaves estrangeiras so os elos de


ligao entre as tabelas

Estrangeira

porqu?

uma chave pertencente a uma tabela;


No est no seu local de origem, mas sim
no local para onde foi migrada
(estrangeiro)

03/08/2015

Chave Estrangeira - Exemplo


ELEITOR N

vota

UNIDADE
FEDERACO

Tabela

UNIDADE FEDERACO
Chave Primria: SIGLA-UF
Colunas: Nome, rea-m2
Tabela ELEITOR
Chave Primria: NUM-TITULO-ELEITOR
Colunas: CPF,RG, Nome, Estado-Civil
Chave Estrangeira: SIGLA-UF

Tipos de Chave primria


Simples.
Composta.

Chave primria simples aquele que ser formada


por apenas um atributo. Por exemplo:
matricula_professor.

Chave primria composta formada por dois ou


mais atributos. Por exemplo: uma entidade chamada
Localizao tem os seguintes atributos: nome da
cidade, nome do estado, nome do pas. Esses
atributos sozinhos no podem ser chave primrio
porque eles se repetem.

Entidade Fraca
Entidade

fraca um tipo de entidade que


no possui atributo chave primria por si
s. Isso significa que no possvel
definir uma chave primria, nem simples e
nem composto, para a entidade.

Exemplo

de entidade Contato uma


entidade fraca, porque no possui um
atributo que identifique um nico objeto.

Uma

entidade fraca dependente de uma


outra entidade, e o relacionamento entre
a entidade fraca e a outra entidade
normalmente 1:N, e o N fica junto
entidade fraca.

Relacionamento
Conjunto

de Relacionamentos
relacionamento uma associao entre uma
ou vrias entidades (objetos da realidade)
Ex. um relacionamento entre um scio Joo com
o show S-15.
Esse relacionamento especifica que o scio Joo
compareceu ao show que foi designado com o
numero S-15.
Um

Um

conjunto de relacionamentos um conjunto


de relacionamentos de mesmo tipo.
O relacionamento representado por um
losango com o nome do relacionamento no
centro.
Ex.

03/08/2015

relacionamento pode ter atributos.


Esses atributos so denominados de atributos
descritivos

Restries de Mapeamento ou
cardinalidade

Um

Ex.

relacionamento entre uma entidade fraca e


outra entidade chamado relacionamento
identificador, e este relacionamento no possuiu
atributos descritivos.

Cardinalidade de relacionamento
Cardinalidade mxima: indica a quantidade mxima
de ocorrncias de entidades que podem estar
associadas a uma ocorrncia da outra entidade (1 ou
n).
Ex.: A entidade Empregado tem cardinalidade mxima
1 no relacionamento.
Trabalha: uma ocorrncia de Empregado pode estar
associada a no mximo uma ocorrncia de
Departamento, ou em outros termos um empregado
pode estar trabalhando somente em um
departamento.

Duas

cardinalidades mximas so relevantes:


A cardinalidade mxima 1
A cardinalidade mxima muitos
representada pela letra n

esquema de E-R de uma empresa pode


definir certas restries, as quais o contedo do
banco de dados deve respeitar. Isso feito
utilizando o Mapeamento de Cardinalidade.

As

restries de mapeamento ou cardinalidade


expressam o nmero de objetos de uma
entidade ao qual outra entidade pode ser
associada, via um relacionamento.

entidade Departamento tem cardinalidade


mxima de 120 no relacionamento.

Trabalha: uma

ocorrncia de Departamento
pode esta associada a no mximo 120 de
Empregado, isto , um departamento pode ter
no mximo 120 empregados trabalhando nele.

Cardinalidade

Mnima: especifica se a
participao de todas as ocorrncias das entidades
no relacionamento obrigatria ou opcional.
Em um projeto de BD usada somente duas
cardinalidades mnimas: a cardinalidade mnima 0 e
a cardinalidade mnima 1.
A cardinalidade mnima 1 recebe a denominao
de associao obrigatria.
A cardinalidade mnima 0 recebe a denominao
de associao opcional.

03/08/2015

Mapeamento das Cardinalidades


Para

um conjunto de relacionamentos R
binrio entre os conjuntos de entidades A
e B, o mapeamento das cardinalidades
deve seguir uma das instrues abaixo:

Um

para Um (1:1)
Um para Muitos (1:N)
Muitos para Muitos (N:N)

Ex. Cardinalidade

1:1

Cardinalidade Um para Um (1:1)


A

cardinalidade 1:1 ocorre quando um objeto de


uma entidade pode se relacionar a apenas um
objeto de outra entidade e vice-versa.
Ex. Uma entidade em A est associada no
mximo a uma entidade em B, e uma
entidade em B est associada a no
mximo uma entidade em A.

Cardinalidade Um para Muitos (1:N)


A

Um

professor dirige uma escola e uma escola


dirigida por um professor.

Ex. Cardinalidade

1:N

cardinalidade 1:N ocorre quando um objeto


de uma entidade pode se relacionar a vrios
objetos de outra entidade, mas o contrrio
no verdadeiro.
Ex. Uma entidade em A est associada a
vrias entidades em B. Uma entidade
em B, entretanto, deve estar associada
no mximo a uma entidade em A.

Cardinalidade Muitos para Muitos (N:N)


A

Um

professor pode trabalhar em 1 e apenas 1


escola, mas uma escola pode ter 1 ou vrios
professores trabalhando nela.

cardinalidade N:N ocorre quando um


objeto de uma entidade pode se
relacionar a vrios objetos da outra
entidade e vice-versa.
Ex. Uma entidade em A est associada
a qualquer nmero de entidades em
B e uma entidade em B est associada
a um nmero qualquer de entidades
em A.

03/08/2015

Ex. Cardinalidade

Relacionamento Ternrio ou
maiores

N:N

Os

relacionamentos apresentados at agora


foram binrios, entre duas entidades.
Mas um relacionamento pode ocorrer
tambm entre trs ou mais entidades.
Ex. um professor pode dar aulas de uma ou
mais disciplinas e poderia existir um ou
mais professores que dessem a mesma
disciplinas em diferentes turmas.

Um

professor ministra uma ou vrias


disciplinas e uma disciplina pode ser
ministrada por um ou vrios professores.

Relacionamento Recursivo
Um

tipo especial de relacionamento aquele


que relaciona objetos de uma mesma
entidade. Esse tipo de relacionamento
denominado de relacionamento recursivo ou
autorrelacionamento.

O Relacionamento ministra possui ainda o atributo


ano que permite distinguir qual foi o professor
que ministrou determinada disciplina para uma
turma em um determinado ano.

Ex. Existam

alguns alunos que representem


grupos de outros alunos em reunies e
assuntos estudantis.

Especializao
Consiste

na subdiviso de uma entidade


mais genrica (ou entidade pai) em um
conjunto de entidade especializada (ou
entidades filhas)

Ocorre
O

objeto aluno representa vrios outros


objetos dentro da mesma entidade.

quando um conjunto de
entidades pode conter subgrupos de
entidades com atributos especficos a
cada subgrupo.

03/08/2015

Ex.

Ex.

Especializao

As

entidades filhas herdam todos os atributos da


entidade pai e, portanto, no se devem repetir os
atributos da entidade pai nas entidades filhas.

Para

utilizar uma especializao, deve-se analisar


antes se as entidades filhas possuem atributos
especficos ou relacionamentos especficos ou
ainda outra especializao.
Se a entidade filha no tiver nem atributo
especfico, nem relacionamento especfico ou
nem outra especializao, ento ela no deve ser
especializada. Dizemos que o modelo deve ser
generalizado, ou seja, deve passar por um
processo de generalizao.
A generalizao o processo inverso da
especificao. Em vez de subdividir a entidade,
cria-se uma entidade mais genrica.

Ex.

Ex.

03/08/2015

Agregao ou Entidade Associativa

Ex.

10