Вы находитесь на странице: 1из 27

Banco de Dados Modelo Relacional

Universidade Federal de Santa Catarina


Banco de Dados

Mapeamento ER- Relacional


(Material adaptado das profs. Daniela Leal Musa e Patricia)
Banco de Dados Modelo Relacional
Banco de Dados Modelo Relacional
Banco de Dados Modelo Relacional
Banco de Dados Modelo Relacional
Banco de Dados Modelo Relacional
Processo de Mapeamento
Mapeamento preliminar de entidades e seus
atributos
Mapeamento de relacionamentos e seus atributos
Mapeamento de especializaes

Banco de Dados Modelo Relacional
Mapeamento de Entidades
Entidade -> transformar em tabela
Para cada entidade (no fraca) deve ser criada uma
tabela
Cada atributo da entidade definido como uma coluna
Os atributos multivalorados no devem ser includos na tabela
A chave primria o identificador primrio da Entidade
Banco de Dados Modelo Relacional
Mapeamento de Entidades
Entidade -> transformar em tabela
Para cada entidade (no fraca) deve ser criada uma
tabela
Cada atributo da entidade definido como uma coluna
Os atributos multivalorados no devem ser includos na tabela
A chave primria o identificador primrio da Entidade
Banco de Dados Modelo Relacional
Mapeamento de Entidades
Atributos Multivalorados (2 solues)
1) Criar uma nova entidade relacionada a original
A chave primria pode ser o prprio atributo concatenado
com a chave primria da entidade origem
Empregados (CPF, Nome, Idade)
Telefone(#CPF, Fone)
Banco de Dados Modelo Relacional
Mapeamento de Entidades
Atributos Multivalorados
2) Substituir por atributos fixos
Deve ser realizado somente quando a quantidade for
pequena
Empregados (CPF, Nome, Idade, FoneRes, FoneCom, Celular)
Banco de Dados Modelo Relacional
Processo de Mapeamento
Mapeamento preliminar de entidades e seus
atributos
Mapeamento de relacionamentos e seus
atributos
Mapeamento de especializaes

Banco de Dados Modelo Relacional
Mapeamento de Relacionamentos
Os relacionamentos so implementados usando
chave estrangeira. Existem trs tcnicas:
1)Criar Tabela Prpria
Indicado para cardinalidades n:n em ambos os lados
2)Colunas Adicionais
Indicado para cardinalidades 1:n e 1:1
3)Fuso de Tabelas
Indicado para cardinalidades 1:1 em ambos os lados

Banco de Dados Modelo Relacional
Mapeamento de Relacionamentos
1) Criar Tabela Prpria
Criar uma tabela para o relacionamento
Inserir atributo(s) do relacionamento
A chave primria formada pela concatenao das chaves
de todas as entidades envolvidas no relacionamento
Cardinalidade n:n
1,N em ambos os lados
Empregados (CPF, Nome)
Projetos (Cdigo, Nome)
Participao (#CPF,#Cdigo, DataIncio)
Banco de Dados Modelo Relacional
Mapeamento de Relacionamentos
2) Colunas Adicionais
Incluir chave estrangeira e atributos na tabela
correspondente entidade que desempenha o papel com
cardinalidade mxima n
Cardinalidade 1:N
(1:N ou 0:N de um lado e
(1:1 do outro)
Empregados (CPF, Nome, #CdigoDepto, data)
Departamento (Cdigo, Nome)
Banco de Dados Modelo Relacional
Mapeamento de Relacionamentos
2) Colunas Adicionais
Incluir chave estrangeira e atributos na tabela
correspondente entidade que desempenha o papel com
cardinalidade (0,1)
Cardinalidade 1:1
(1:1 de um lado e
0:1 do outro)
Pessoas (Cdigo, Nome)
CarteirasMotorista(Nmero, DataExpedio, Validade, Categoria,
#Cdigo, DataRetirada)
Banco de Dados Modelo Relacional
Mapeamento de Relacionamentos
3) Fuso de Tabelas
Substituir as duas entidades originais por uma nica
entidade
Escolher uma das identificaes como chave primria
Cardinalidade 1:1
Conferncias (Sigla, Nome, DataInstalao, Nmero,
Endereo, eMail)
Banco de Dados Modelo Relacional
Mapeamento de Relacionamentos
Auto-Relacionamento
Valem as mesmas recomendaes anteriores
Empregados(CPF, Nome, Idade, #CPFgerente)
Cardinalidade 1:n -> coluna adicional
Banco de Dados Modelo Relacional
Mapeamento de Relacionamentos
Relacionamento Ternrio
Tabela Prpria
Instituies (Sigla, ...)
Projetos (Nmero, ...)
Pesquisadores (CPF, ...)
Pesquisa (#Sigla, #Nmero, #CPF, DataIncio)
Banco de Dados Modelo Relacional
Mapeamento de Especializaes
3 tcnicas so geralmente utilizadas
Soluo 1: Tabela nica para entidade genrica e
especializaes
Soluo 2: Tabelas para a entidade genrica e as
entidades especializadas
Soluo 3: Tabelas apenas para as entidades
especializadas
Banco de Dados Modelo Relacional
Mapeamento de Especializaes
Soluo 1: Tabela nica para entidade genrica e
especializaes
Servidores (CPF, Nome, Tipo, Funo, Titulao, Categoria)
Indicada para generalizao parcial e subclasses SEM atributos
Banco de Dados Modelo Relacional
Mapeamento de Especializaes
Soluo 2: Tabelas para a entidade genrica e as
entidades especializadas (pode existir um servidor que nao seja
nem funcionario nem professor)
Servidores (CPF, Nome, tipo)
Funcionarios (#CPF, nome, Funo)
Professores (#CPF, nome, Titulao, Categoria)
Indicada para generalizao parcial e subclasses COM atributos
Banco de Dados Modelo Relacional
Mapeamento de Especializaes
Soluo 3: Tabelas apenas para as entidades
especializadas
Funcionarios (CPF, Nome, Funo)
Professores (CPF, Nome, Titulao, Categoria)
Indicada para generalizao TOTAL e subclasses COM ou SEM atributos
Banco de Dados Modelo Relacional
Mapeamento de Entidades
Entidade Fraca-> transformar em tabela
para cada entidade fraca deve ser criada uma tabela
cada atributo da entidade fraca definido como uma
coluna
Chave primria formada pela chave da entidade fraca
concatenada com as chaves da entidade que mapeiam o
relacionamento
Ateno: a entidade fraca s pode ser transformada em
tabela, aps o mapeamento de todas as entidades
envolvidas no relacionamento
Banco de Dados Modelo Relacional
Mapeamento de Entidades
Entidade Fraca
Pedidos (Nmero, ..)
Itens (#NumeroPedido, NumeroItem, Produto, Quantidade)
Banco de Dados Modelo Relacional
Exerccio
Faa o mapeamento para o modelo relacional:
Banco de Dados Modelo Relacional
Banco de Dados Modelo Relacional

Sistemas de Banco de Dados, Elmasri-Navathe
- 4a. Edio: Captulo 7
Projeto de Banco de Dados , Carlos Alberto Heuser
5 edio: Captulo 4






Leitura Complementar

Вам также может понравиться