Escolar Documentos
Profissional Documentos
Cultura Documentos
Entidade-Relacionamento
para o Modelo Relacional
Banco de Dados
Profa. Dra. Cristina Dutra de Aguiar Ciferri
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Modelo de Dados e o Projeto de BD
independe do SGBD depende do SGBD
minimundo
Modelo Relacional
Modelo Entidade Mapeamento
Relacionamento MER para o
(MER) Modelo Relacional
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Mapeamentos
! Geram três tipos de relação:
– relação entidade com a mesma informação que
o tipo-entidade original
– relação entidade com a chave estrangeira de um
outro tipo-entidade
– relação relacionamento com as chaves
primárias de todos os tipos-entidade
relacionados, além dos atributos do tipo-
relacionamento
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Entidade Forte
! Modelo entidade-relacionamento
– tipo-entidade E
– atributos a1, a2, ..., an
! Modelo relacional
– tabela de n colunas distintas, correspondendo aos n
atributos de E
CPF_empregado
EMPREGADO
nome_empregado
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Entidade Fraca
! Modelo entidade relacionamento
– tipo-entidade forte E: chaves primárias b1, b2, ..., bm
– tipo-entidade fraca A: atributos a1, a2, ..., an
! Modelo relacional
– tabela de n+m colunas distintas, correspondendo às m
chaves de E e aos n atributos de A
CPF_empregado nome_dependente
1 n DEPENDENTE
EMPREGADO possui
nome_empregado sexo_dependente
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Relacionamento (1:1)
CPF_empregado sigla_depto
1 1
nome_empregado
EMPREGADO gerencia DEPARTAMENTO
nome_depto
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Relacionamento (1:1)
CPF_empregado sigla_depto
1 1
nome_empregado
EMPREGADO gerencia DEPARTAMENTO
nome_depto
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Relacionamento (1:n)
! Modelo entidade relacionamento
– tipo-relacionamento binário: E1 relacionando-se com E2
– cardinalidade: 1:n
! Modelo relacional
Repete-se a chave primária de E1 em E2
– a tabela de E1 possuirá apenas os atributos de E1
– a tabela de E2 possuirá
N os atributos de E2
N os atributos do tipo-relacionamento
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Relacionamento (1:n)
n 1
EMPREGADO trabalha DEPARTAMENTO
CPF_empregado sigla_depto
nome_empregado nome_depto
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Atributo de Tipo-Relacionamento
(1:1 e 1:n)
n 1
EMPREGADO trabalha DEPARTAMENTO
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Relacionamento (m:n)
! Modelo entidade relacionamento
– tipo-relacionamento binário: E1 relacionando-se com E2
– cardinalidade: m:n
! Modelo relacional
– a tabela de E1 possuirá apenas os atributos de E1
– a tabela de E2 possuirá apenas os atributos de E2
– a tabela R (relativa ao tipo-relacionamento) conterá:
N a chave primária de E1 (chave estrangeira)
N os atributos do tipo-relacionamento
! Chave primária de R
– chave primária de E1 + chave primária de E2
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-Relacionamento (m:n)
m n
EMPREGADO desenvolve PROJETO
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-relacionamento Unário (1:1)
casa
“marido” 1
1
pessoa
“esposa”
código_pessoa
nome_pessoa
supervisiona
“supervisionado” n
1
empregado
“supervisor”
código_emp
nome_emp
N a chave primária de E2
N a chave primária de E3
N os atributos do tipo-relacionamento
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-relacionamento Ternário
chave-A
tipo-entidade_A
atributos_A
ABC
y z
chave-B chave-C
tipo-entidade_B tipo-entidade_C
atributos_B atributos_C
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-relacionamento Ternário
! Tabela relativa ao tipo-relacionamento
– Primeiro caso:
x=y=z=1
N ABC (chaves-A, chaves-B, chaves-C)
+ integridade
N ABC (chaves-A, chaves-B, chaves-C)
referencial
N ABC (chaves-A, chaves-B, chaves-C)
– chaves-A, chaves-B chaves-C
– chaves-A, chaves-C chaves-B
– chaves-B, chaves-C chaves-A
– Segundo caso:
x = m; y = n; z = p + integridade
N ABC (chaves-A, chaves-B, chaves-C) referencial
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Tipo-relacionamento Ternário
! Tabela relativa ao tipo-relacionamento
– Terceiro caso:
x = 1; y = 1; z = m
N ABC (chaves-A, chaves-B, chaves-C)
+ integridade
N ABC (chaves-A, chaves-B, chaves-C)
referencial
– chaves-A, chaves-C chaves-B
– chaves-B, chaves-C chaves-A
– Terceiro caso:
x = 1; y = m; z = n
N ABC (chaves-A, chaves-B, chaves-C) + integridade
– chaves-B, chaves-C chaves-A referencial
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Generalização/Especialização
CPF_empregado
EMPREGADO
nome_empregado
tipo_empregado
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Atributo Tipo-Empregado
! Atributo único
– tipo-empregado
– assume valores diferentes, de acordo com o tipo
do empregado
! Diversos atributos
– tipo_empS, tipo_empT, tipo_empE, ...
– cada um dos atributos assume valor 0 ou 1, de
acordo com o tipo do empregado
abordagem muito mais flexível, principalmente
para hierarquias com restrição de sobreposição
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Generalização/Especialização
! Modelo entidade relacionamento
– E1: superclasse
– E2, ..., En : subclasses de E1
! Modelo relacional
– a tabela de E1 possuirá:
N os atributos de E1
– as tabelas de E2 a En possuirão:
N os seus atributos específicos
N a chave primária de E1
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Generalização/Especialização
CPF_empregado
EMPREGADO
nome_empregado
tipo_empregado
N os atributos de E1
N a chave primária de E1
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Outras Formas de Mapeamento
CPF_empregado
EMPREGADO
nome_empregado
tipo_empregado
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Outras Formas de Mapeamento
! Modelo entidade relacionamento
– E1: superclasse
– E2, ..., En : subclasses de E1
! Modelo relacional
– a tabela de E1 possuirá:
N os atributos de E1
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Outras Formas de Mapeamento
CPF_empregado
EMPREGADO
nome_empregado
tipo_empregado
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Outras Formas de Mapeamento
! Modelo entidade relacionamento
– E1: superclasse
– E2, ..., En : subclasses de E1
! Modelo relacional
– a tabela de E1 possuirá:
N os atributos de E1
N a chave primária de E1
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Outras Formas de Mapeamento
CPF_empregado
EMPREGADO
nome_empregado
tipo_empregado
CPF_pessoa CGC_univ
nome_pessoa data_ingresso nome_univ
n m
PESSOA ingressa UNIVERSIDADE
orienta
n
CPF_professor
PROFESSOR
nome_professor
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Agregação
! Dados vistos em um nível mais baixo
– atributos dos tipos-relacionamentos
– chaves primárias dos tipos-entidades
! Mapeamento
pessoa (CPF_pessoa, nome_pessoa)
universidade (CGC_univ, nome_univ)
ingressa/aluno (CPF_pessoa, CGC_univ, data_ingresso)
professor (CPF_professor, nome_professor)
orienta (CPF_pessoa, CGC_univ, CPF_professor)
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Agregação
CPF_pessoa CGC_univ
nome_pessoa data_ingresso nome_univ
n m
PESSOA ingressa UNIVERSIDADE
ALUNO
m
orienta
n
CPF_professor
PROFESSOR
nome_professor
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Mapeamento
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Agregação
CMR_médico hora data+ CPF_paciente
nome_médico nome_paciente
n m
MÉDICO atende PACIENTE
ATENDIMENTO
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Agregação
CMR_médico hora data+ CPF_paciente
nome_médico nome_paciente
n m
MÉDICO atende PACIENTE
obs
ATENDIMENTO
Profa. Dra. Cristina Dutra de Aguiar Ciferri Mapeamento para o Modelo Relacional
Agregação
CMR_médico hora data+ CPF_paciente
nome_médico nome_paciente
n m
MÉDICO atende PACIENTE
obs
ATENDIMENTO nro_atendimento