Buscar

cardinalidade mapeamento

Prévia do material em texto

1Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Programação em Banco de Dados
Aula Reforço
Capítulo 07
Prof. Me. João Paulo R. de Siqueira
2Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
ATENÇÃO
• Esta apresentação não substitui a leitura da bibliografia 
complementar;
• As provas desta disciplina terão como base:
– O conteúdo dos livros indicados no PEA;
– As atividades e exemplos dados em sala de aula;
– O conteúdo das apresentações;
– ATPS;
3Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Relacionamentos
4Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Relacionamento
• Os objetos do mundo real não ocorrem isolados. Eles se 
associam ou se vinculam uns aos outros.
• Esses vínculos são chamados de relacionamento.
• Por exemplo, em um comércio um cliente pode estar vinculado a 
um ou a mais pedidos.
Cliente Pedidos
5
Modelo Entidade Relacionamento
Entidade 1 Entidade 2Relacionamento
Relacionamento é o elemento responsável por definir as características 
das ligações entre as entidades e é representado graficamente por um 
losango. Seu nome em geral é expresso por um verbo. 
6Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Nome dos relacionamentos
• O nome que nós damos a um relacionamento é sempre uma 
expressão que envolve os nomes das entidades e um verbo que 
indica a natureza do vínculo, no seguinte formato: 
entidade verbo entidade
• Por exemplo, o relacionamento em um clube entre sócios e títulos 
pode receber o nome:
sócio possui título
ou 
título pertence a sócio
7Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Nome dos relacionamentos
• No caso do DER não constar o nome do relacionamento, este é 
denominado pela concatenação de nomes das entidades 
participantes.
• Exemplo:
• Neste caso, o relacionamento é denominado EMPREGADO-
DEPENDENTE.
Empregado DependenteEMPREGADO-DEPENDENTE
8
Exemplo
Esse exemplo significa: Uma pessoa está lotada em um departamento.
9
Exemplo
10Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Relacionamento e instância
11Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exemplo (relacionamento LOTAÇÃO)
• O diagrama abaixo mostra um par específico formado por um 
relacionamento de PESSOA e de DEPARTAMENTO;
– Representa que PESSOAS são LOTADAS em um 
DEPARTAMENTO.
– Uma instância desse relacionamento poderia ser:
FINANCEIRO MARIALOTAÇÃO
12
Diagrama de instâncias
Entidade PESSOAo p1
o p2
o p3
o p4o p5
o p6 o p8
o p7
Entidade DEPARTAMENTO
o d1
o d2
o d3
Entidade LOTAÇÃO
o p1,d1
o p2,d1
o p4,d2
o p5,d3
13Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade
14Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade
• A cardinalidade expressa o número de entidades as quais outra 
entidade pode estar associada em um relacionamento.
• Uma notação comum identifica apenas ao valor máximo da 
cardinalidade que um relacionamento pode alcançar.
? ?
15Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade
• Um para um (1 para 1)
– Uma entidade em A está associada no máximo a uma 
entidade em B, e uma entidade em B está associada a no 
máximo uma entidade em A.
16Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade
• Um para muitos (1 para N)
– Uma entidade em A está associada a várias entidades em B. 
Uma entidade em B, entretanto, deve estar associada no 
máximo a uma entidade em A
17Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade
• Muitos para um (N para 1)
– Uma entidade em A está associada a no máximo uma 
entidade em B. Uma entidade em B, entretanto, pode estar 
associada a um número qualquer de entidades em A
18Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade
• Muitos para muitos (N para N) - pode ser substituído por 
qualquer outra letra, como M)
– Uma entidade em A está associada a qualquer número de 
entidades em B e uma entidade em B está associada a um 
número qualquer de entidades em A
19Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade
• Exemplo de Cardinalidade em uma relação.
• Domínio = Supermercado.
20Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade 1 para 1
• Exemplos:
– Um funcionário gerencia no máximo 1 departamento. Um 
departamento é gerenciado por no máximo um funcionário
Funcionário DepartamentoGerencia1 1
f1
f2
f3
d1
d2
d3
21Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade 1 para muitos
• Exemplos:
– Um funcionário está lotado no máximo em 1 departamento. 
Um departamento tem até N funcionários lotados nele.
Funcionário DepartamentoLotadosN 1
f1
f2
f3
f4
f5
d1
d2
d3
22Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade muitos para muitos
• Exemplos:
– Um funcionário participa de vários projetos. Um projeto pode 
ter a participação de até N funcionários
Funcionário ProjetosParticipaçãoN N
f1
f2
f3
p1
p2
p3
23Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Cardinalidade muitos para muitos
• Exemplos:
– Um Médico atende N pacientes. Um paciente pode se 
consultar com N médicos.
Médico PacienteConsultaN N
24Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício 1
25Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício 1 – Construa um Diagrama E-R
• Domínio = Locadora
• Uma locadora necessita efetuar o cadastro de clientes e manter 
um controle atualizado dos Filmes disponíveis para locação.
• Os dados básicos utilizados no cadastrado de cada filme:
– Nome do filme (Exemplo: E o vento levou);
– Gênero (Exemplo: Terror, Drama, Suspense);
– Empresa produtora (Exemplo: Fox Filmes, Paris Filmes,etc);
• A locadora decidiu que cada DVD (mesmo que com o mesmo 
título) será cadastrado individualmente, portanto, a cada filme 
haverá um cadastro único.
• Um filme será classificado em apenas um gênero.
• Apresente a Cardinalidade dos relacionamentos;
28Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício 2
29Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício 2 - DETRAN
• Construa um DER:
– O DETRAN possui um sistema bem complexo de banco de 
dados. Entre suas funções está o registro dos carros, sua 
marca e modelo, o registro dos seus proprietários e o registro 
das multas que o veículo possui.
32Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Restrição: Cardinalidade Máxima e Mínima
33
Observe o relacionamento abaixo
Funcionário DepartamentoLotado
N 1
(1,1) (0,N)
O que podemos perceber é que um departamento 
pode não ter nenhum funcionário lotado ou poderá 
ter vários funcionários.
Quando usamos apenas um elemento representativo na 
cardinalidade estamos representando a RAZÃO
Quando usamos dois elementos entre parênteses na 
cardinalidade estamos representando a PARTICIPAÇÃO
34
Cardinalidade Máxima e Mínima
Sempre será levado em consideração a maior cardinalidade.
Estante LivroTem
(0,N) (1,1)
Funcionário ProjetoParticipa(0,N) (1,5)
Funcionário DepartamentoGerencia
(0,1) (1,1)
35Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício
1) Um homem pode ser casado no mínimo com quantas mulheres 
da outra entidade? E a mulher? Defina máximo e mínimo 
(legalmente!) 
2) Uma empresa possui o cadastro de funcionários e seus 
dependentes; nem todo funcionário possui dependentes, mas 
todos os dependentes têm algum funcionário associado. Um 
funcionário poderá ter vários dependentes e dois ou mais 
funcionáriosnão poderão ter o mesmo dependente. Defina a 
cardinalidade.
Homem MulherCasado
( , ) ( , )
Funcionário DependentePossui
( , ) ( , )
37Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Grau de relacionamento
38Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Grau de relacionamento
• Indica quantos conjuntos de entidades estão envolvidos 
naqueles relacionamentos.
• Os relacionamentos podem ter associado vários conjuntos de 
entidades, caracterizando:
– relacionamentos binários (grau de relacionamento 2);
– relacionamentos ternários (grau 3);
– relacionamentos quaternários (grau 4), entre outros;
• É importante observar que um relacionamento com grau N > 2 só 
é justificável se não puder ser decomposto em relacionamentos 
com graus menores e ainda manter a semântica desejada
39Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Grau de relacionamento: Binário
Binário:
ALUNO CURSOMATRICULADO
(1,N) (1,N)
40Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Grau de relacionamento: Ternário
• Os relacionamentos entre múltiplas entidades expressam um fato 
em que todas as entidades ocorrem simultaneamente, ou seja, 
todas as ocorrências do relacionamento possuem, sempre, 
ligações com todas as entidades envolvidas no relacionamento.
• Não pode existir de um relacionamento triplo, em um determinado 
momento, se transformar em duplo.
Ternário
ALUNO DISCIPLINAMONITORA
PROFESSOR
(1,N)(1,N)
(1,1)
41Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Grau de relacionamento: Ternário
• Para descobrir a cardinalidade do relacionamento ternário, deve-
se proceder da seguinte forma:
– Separar a entidade ALUNO e analisar o par PROFESSOR, 
DISCIPLINA. Para cada par PROFESSOR / DISCIPLINA 
podemos ter de 1 até N ALUNOS relacionados
– Separar a entidade PROFESSOR e analisar o par ALUNO, 
DISCIPLINA. Para cada par ALUNO / DISCIPLINA podemos 
ter 1 e somente 1 PROFESSOR relacionado
– Separar a entidade DISCIPLINA e analisar o par 
PROFESSOR, ALUNO. Para cada par PROFESSOR / ALUNO 
podemos ter de 1 até N DISCIPLINAS relacionadas
• Sempre que existe uma ocorrência no relacionamento , esta 
apresenta referência às três entidades
42Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Grau de relacionamento: Ternário
• Podemos tentar “quebrar” o relacionamento ternário em vários 
binários.
– O problema é a perda de informações semânticas;
– A informação representada por um conjunto de 
relacionamentos ternário nem sempre pode ser obtida apenas 
com conjunto de relacionamentos binários.
– Exemplo: Como responder: Aluno A auxilia Professor P em 
qual Disciplina?
43Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Atributo em um relacionamento
44Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Atributo em um relacionamento
• Dependendo do conjunto de entidades associadas entre si, é 
necessário adicionar atributos em um relacionamento.
– Ex: Hora no relacionamento Trabalha_Em entre Funcionário e 
Projeto
Exemplo MER:
N N
45Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Notação James Martin
Pé de galinha
46Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Notação James Martin
• Notação de Peter Chen é interessante e bastante expressiva, 
porém para grandes modelos torna sensivelmente confuso, com 
muitos cruzamentos e complicada de ser lido;
• As ferramentas Case utilizam a notação da Engenharia de 
informações, notação Pé de galinha ou notação de James Martin;
47
Notação James Martin
Exemplo de Modelagem, onde:
= muitos
= um
= a ocorrência do relacionamento é opcional;
= a ocorrência do relacionamento é obrigatória;
Empregado Departamento
48
Notação James Martin
TáxiMotorista
Associações de “Um para Um”
Estado Cidade
Associações de “Um para Muitos”
Advogado Processo
Associações de “Muitos para Muitos
49Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Mapeamento ER para relacional
50Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Objetivo
• Será demonstrado nessa aula como projetar um esquema de 
banco de dados relacional com base em um projeto de 
esquema conceitual;
• Muitas ferramentas utilizam diagramas ER ou EER ou variações 
para desenvolver um esquema graficamente, e depois o 
convertem de maneira automática em um esquema de banco de 
dados relacional;
51
Fases do projeto do BD
52
Fases do projeto do BD
53Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Projeto lógico de BD relacionais
• O Projeto Lógico produz um esquema lógico a partir de um 
esquema conceitual;
• O esquema ER é mapeado para um esquema lógico que consiste 
em conjunto de relações normalizadas. 
54Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa I
Entidade regular
55Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 1: Entidade regular
• Como seria mapeada essa entidade:
56Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 1: Entidade regular
• Uma entidade regular é traduzida em tabela;
• Atributos da entidade traduzidos em colunas da tabela;
– Atributos identificadores convertidos em chave primária;
57Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 1: Entidade regular
LIVRO (ISBN, Título, Autor, Ano)
ISBN TÍTULO AUTOR ANO
95809410378 O conde de Monte Cristo Alexandre Dumas 1844
9580442785X Vidas Secas Graciliano Ramos 1938
8566374001 O Hobbit J. R. R. Tolkien 1937
58Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa II
Entidade fraca
59Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 2: Entidade fraca
Como fica a entidade fraca? 
Toda entidade fraca vira uma tabela?
N1
60Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 2: Entidade fraca
Entidade fraca será traduzida em uma tabela;
• Atributos da entidade são traduzidos em colunas da tabela;
• Chave primária da tabela/entidade fraca:
Atributos identificadores da entidade fraca
+
Chave primária da entidade proprietária
61Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 2: Entidade fraca
LIVRO (ISBN, Título, Autor, Ano)
EXEMPLAR (ISBN, Sequencia, DataAquisicao)
ISBN referencia LIVRO
N1
62Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa III
Relacionamento 1:1
63Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1
Como fica esse tipo de relacionamento?
64Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1
• Exemplo:
• Três alternativas:
a) Chave estrangeira em um dos lados;
b) Relacionamento incorporado (fusão);
c) Tabela de relacionamento;
65
Relacionamento 1:1
(Heuser, 2004)
- Opção mais usada;
Deve ser seguida a não ser em casos excepcionais;
66Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1 (Opção A)
Chave estrangeira (0,1):(0,1)
• Chave primária de uma tabela torna-se chave estrangeira de 
outra;
67Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1 (Opção A)
PESSOA (Código, Nome, Telefone)
ARMÁRIO (Código, Tamanho)
Código Nome Telefone
1525 João Paulo 555-0101
1637 Pedro 410-0505
1707 Maria 333-9595
2111 Felipe 211-3290
PESSOA
Código Taman.
1A Duplo
1B Simples
2A Duplo
3B Simples
4A Simples
ARMÁRIO
Primeiro identificamos as tabelas:
Como eu referencio um armário a 
uma pessoa?
68Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1 (Opção A)
PESSOA (Código, Nome, Telefone)
ARMÁRIO (Código, Tamanho,Ocupante)
Ocupante referencia PESSOA (Código)
Código Nome Telefone
1525 João Paulo 555-0101
1637 Pedro 410-0505
1707 Maria 333-9595
2111 Felipe 211-3290
PESSOA
Código Taman. Ocupante
1A Duplo 1637
1B Simples Nulo
2A Duplo Nulo
3B Simples 2111
4A Simples Nulo
ARMÁRIO
69Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1 (Opção A)
PESSOA (Código, Nome, Telefone)
ARMÁRIO (Código, Tamanho, Ocupante, Data, Hora)
Ocupante referencia PESSOA (Código)
Código Nome Telefone
1525 João Paulo 555-0101
1637 Pedro 410-0505
1707 Maria 333-9595
2111 Felipe 211-3290
PESSOA
Código Taman. Ocupante Data Hora
1A Duplo 1637 01/04 08:35
1B Simples Nulo Nulo Nulo
2A Duplo Nulo Nulo Nulo
3B Simples 2111 23/08 13:41
4A Simples Nulo Nulo Nulo
ARMÁRIO
70Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1 (Opção B)
Relacionamento incorporado (1,1):(1,1)
• Fusão das duas tabelas em uma única;
• Recomendação: Ambas devem ter participação total na 
relação.
Participação total: É chamada de participação total quando a 
cardinalidade mínima de participação é 1. Ou seja, se sou obrigado a 
participar de uma relação eu chamo de participação total.
71Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1 (Opção C)
Tabela de relacionamento
• Relacionamento se transforma em terceira relação;
• Terceira relação: Referência cruzada.
– Mantém a chave de ambas as relações envolvidas no 
relacionamento.
72Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 3: Relacionamento 1:1 (Opção C)
PESSOA (Código, Nome, Telefone)
ARMÁRIO (Código, Tamanho)
OCUPA (CodPessoa, CodArmario, Data, Hora)
CodPessoa referencia Pessoa (Código)
CodArmario referencia Armário (Código)
Código Nome Telefone
1525 João Paulo 555-0101
1637 Pedro 410-0505
1707 Maria 333-9595
2111 Felipe 211-3290
PESSOA
CodPessoa CodArmario Data Hora
1637 1A 01/04 08:35
2111 3B Nulo Nulo
OCUPA Código Taman.
1A Duplo
1B Simples
2A Duplo
3B Simples
ARMÁRIO
73
Relacionamento 1:1
(Heuser, 2004)
74Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício
75Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício 1
• Mapeie o seguinte modelo ER para o relacional:
(1,1)(0,1)
77Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa IV
Relacionamento 1:N
78Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 4: Relacionamento 1:N
• Nós podemos ter a seguinte situação.
(1,1)(0,N)
79
Etapa 4: Relacionamento 1:N
(Heuser, 2004)
80Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 4: Relacionamento 1:N
Chave Estrangeira
• Chave primária de uma das relações torna-se chave estrangeira 
da outra.
(1,1)(0,N)
1 N
81
Etapa 4: Relacionamento 1:N
ESTANTE (CodEstante, Descrição)
LIVRO (ISBN, Título, CodEstante)
CodEstante Referencia Estante
(1,1)(0,N)
1 N
82Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício
83Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício
• Mapeie o seguinte modelo ER para relacional.
(1,1)(0,N)
85Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa V
Relacionamento N:M
86
Etapa 5: Relacionamento N:M
87
Etapa 5: Relacionamento N:M
(Heuser, 2004)
88Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 5: Relacionamento N:M
• Relacionamento se torna uma terceira tabela;
• Terceira Tabela – referência cruzada
– Mantém a chave de ambas as tabelas envolvidas no 
relacionamento;
89
Etapa 5: Relacionamento N:M
PESSOA (CPF, Nome)
LIVRO (ISBN, Título)
ESCREVE(CPF,ISBN)
CPF referencia PESSOA
ISBN referencia LIVRO
90Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício
91Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício
• Mapeie o seguinte modelo ER para relacional.
(1,N)(0,N)(0,N)
93Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa VI
Atributos Multivalorados
94Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 6: Atributos Multivalorados
• Existem duas soluções:
A. Criar uma nova entidade relacionando a original;
• A chave primária pode ser o próprio atributo concatenado 
com a chave primária da entidade origem;
B. Fusão na tabela apenas dos atributos fixos
• Deve ser realizado somente quando a quantidade for 
pequena
95Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 6: Atributos Multivalorados (Opção A)
• Modelo Relacional não permite atributos Multivalorados;
• Atributo vira tabela M
• Chave primária da entidade vira chave estrangeira de M;
• Chave primária de M:
Chave primária da entidade
+
Atributo Multivalorado
• Se o atributo for composto, componentes viram colunas de M;
96
Etapa 6: Atributos Multivalorados (Opção A)
PESSOA (CPF, Nome)
TELEFONE(Telefone, CPF)
CPF referencia PESSOA
97
Etapa 6: Atributos Multivalorados (Opção B)
Empregados (CPF, Nome, Idade, FoneRes, FoneCom, Celular)
Fusão na tabela apenas dos atributos fixos
Deve ser realizado somente quando a quantidade for 
pequena
98Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa VII
Relacionamento N-ário
99
Etapa 7: Relacionamento N-ário
100Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 7: Relacionamento N-ário
• Para cada tipo de relacionamento R n-ário (n > 2), criar nova 
tabela S.
• Incluir como chave estrangeira em S, as chaves primárias das 
tabelas que representam os tipos de entidade participantes.
• Incluir qualquer tipo de atributo do relacionamento n-ário como 
atributo de S.
• A chave primária de S é, normalmente, a combinação de todas as 
chaves estrangeiras que fazem referência às relações 
representantes dos tipos de entidade participantes.
– Se a restrição de cardinalidade em algum tipo de entidade 
participante E for 1, então a chave primária de S não deve 
incluir a chave estrangeira que faz referência à relação 
correspondente à E.
101Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 7: Relacionamento N-ário N:M
FORNECEDOR (CodFornecedor)
PROJETO(CodProjeto)
MATERIAL(CodMaterial)
PARTICIPA(CodFornecedor, CodProjeto, CodMaterial)
CodFornecedor referencia FORNECEDOR
CodProjeto referencia PROJETO
CodMaterial referencia MATERIAL
102Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Etapa 7: Relacionamento N-ário 1:N
DEPARTAMENTO(CodDepartamento)
PROJETO(CodProjeto)
FUNCIONÁRIO(CodFuncionario)
PARTICIPA(CodFuncionario, CodProjeto, CodDepartamento)
CodFuncionario referencia FUNCIONARIO
CodProjeto referencia PROJETO
CodDepartamento referencia DEPARTAMENTO
103Prof. Me. João Paulo R. Siqueira – www.jpsiqueira.com.br
Exercício
• Mapeie o seguinte modelo ER para relacional.
47
Prof. Me. João Paulo R. de Siqueira
jpsiqueira@anhanguera.com

Continue navegando