Você está na página 1de 25

Modelo Conceitual → Lógico

Banco de dados I
Edicarsia Barbiero Pillon
2021/2
Transição
• Depois de criado o modelo Conceitual, o próximo passo é
a criação do modelo lógico.
• Existe um processo conhecido como mapeamento que n
os auxilia na passagem do modelo conceitual para o mod
elo lógico relacional de dados.
• Os conceitos servem para mapear, ou seja, mudar as rep
resentações do modelo de Entidade e Relacionamento pa
ra representações equivalentes no modelo relacional.
Regras Gerais
• Toda entidade vira uma relação.
• Atributo identificador se torna chave primária na relação.
• Atributos simples se tornam colunas (campos).
• Atributos compostos tornam-se atributos simples, mapeados em c
olunas, uma coluna para cada atributo.
• Atributos multi-valorados podem ser mapeados de duas formas:
– Como n colunas, onde n é o número máximo de valores do atributo.
– Criando-se uma nova relação
Atributo identificador e atributo composto

Seguindo as regras, teremos:

► Cliente (#cpf, nome, rua, bairro, cidade, estado)

• O atributo identificador cpf, virou a chave primária na relação;


• o atributo composto endereco foi mapeado de maneira que os seus componentes se tornaram
campos na relação
• o atributo mais abstrato endereço não foi mapeado.
Atributo identificador e atributo composto

► Cliente (#cpf, nome, rua, bairro, cidade, estado)

cliente
#cpfcli nomecli ruacli bairrocli cidadecli estadocli
123456789 Paulo Moreira Avenida Brasil, 200 Centro Joinville SC
111111111 Mara Beatriz Rua da alegria, 128 America Joinville SC
222222222 Antonia Pereira Rua da tristeza, 290 Centro Blumenau SC
987654321 Marco Polo Travessa Boiotata.sn Pontao Curitiba PR
Atributo Multivalorado
• 1° opção:

► Pessoa (#identidade, nome, peso)


► Telefone (#&identidade, numero)
• Nessa primeira alternativa, o atributo multi-valorado telefone foi mapeado em
uma nova relação, que recebe a chave primária de pessoa identidade e o nu
mero que é o número de telefone.
• A chave primária dessa nova relação Telefone, é uma chave composta, form
ada pela junção de identidade e numero.
Atributo Multivalorado - 1° opção
► Pessoa (#identidade, nome, peso)
► Telefone (#&identidade, numero)

pessoa
#identidadepessoa nomepessoa peso
123456789 Paulo Moreira 80
111111111 Mara Beatriz 50
222222222 Antonia Pereira 65
987654321 Marco Polo 98

telefone
#&identidadepessoa numerotelefone
123456789 33224455
111111111 98876543
222222222 87982345
Atributo Multivalorado
• 2° opção:

► Pessoa (#identidade, nome, peso, tel1, tel2, tel3)


• foram criados três campos na relação pessoa para receber os val
ores correspondentes a três telefones.
• é adequada quando se estabelece um número fixo da quantidade
de números de atributos.
Atributo Multivalorado - 2° opção
Pessoa (#identidade, nome, peso, tel1, tel2, tel3)

pessoa
#identidadepessoa nomepessoa peso tel1pessoa tel2pessoa tel3pessoa
123456789 Paulo Moreira 80 343435656 99888765
111111111 Mara Beatriz 50 3032790 30309845 98765433
222222222 Antonia Pereira 65 9876542 998800223 3034566
Mapeamento de entidades Fracas:
• dependente não existe se Sócio não existir.
► Socio (#id, nome, idade)
► Dependente (#&idSocio, #codigo, nome)
• A chave primária da relação Dependente é composta da chave primária de S
ocio mais a chave primaria de Dependente, que nesse caso é o codigo.
• A chave primaria de entidades fracas será sempre chave composta.
Mapeamento de entidades Fracas:
► Socio (#id, nome, idade)
► Dependente (#&idSocio, #codigo, nome)
socio
#socioid nomepessoa idadepessoa
2233 Paulo Moreira 45
1111 Mara Beatriz 50
1234 Antonia Pereira 37

dependente
#&socioid codigo nome
2233 1 Joana Moreira
2233 2 Artur Moreira
1234 1 Paulo Pereira
Mapeando relacionamentos
• Para determinar o tipo de relacionamento em relação a c
ardinalidade, observa-se os máximos da mesma.
• cardinalidade/multiplicidade.
– Relacionamentos binários 1:1
– Relacionamentos binários 1:N
– Relacionamentos binários N:N
– Relacionamento n-ário
– Auto-relacionamento
– Generalização / especialização
Relacionamentos binários 1:1

► Moto (#placa, cor, modelo)


► Motor (#codigo, tipo, &placaMoto)
• Em um relacionamento 1:1, escolhe-se uma das relações para receber a cha
ve estrangeira, essa que é a chave primária da relação que ocorre o relacion
amento.
• Obs: Não é regra, mas geralmente, nesses casos, escolhe-se a relação que
possui participação total no relacionamento.
– Nesse exemplo é o motor, pois é (1,1), ou seja irá sempre existir, enquanto moto (0,
1) pode ou não existir.
Relacionamentos binários 1:1
► Moto (#placa, cor, modelo)
► Motor (#codigo, tipo, &placaMoto)

moto
#placa cor modelo
iug3456 branca Scooter
aub234 azul Street
iut234 Street

motor
#codigo tipo &placamoto
12345 Monocilíndrico iug3456
4 bicilíndrico aub234
Relacionamentos binários 1:N

► Pessoa (#cpf, nome, idade)


► Moto (#placa, modelo, &cpfPessoa, data, preco)
• Em um relacionamento 1:N, escolhe-se a relação “N” (no caso Moto) e inclui
como chave estrangeira a chave primária da outra relação.
• Inclui também os atributos do relacionamento.
Relacionamentos binários 1:N
► Pessoa (#cpf, nome, idade)
► Moto (#placa, modelo, &cpfPessoa, data, preco)
pessoa
#cpf nome idade
123456789 Paulo Moreira 40
111111111 Mara Beatriz 50
222222222 Antonia Pereira 35
987654321 Marco Polo 22

moto
#placa modelo &cpf data preco
iug3456 Scooter 123456789 22/10/2021 749,00
aub234 Street 111111111 10/05/2020 1.245,00
iut234 Street 222222222 25/10/2021 899,00
Relacionamentos binários N:N

► Funcionario (#id, remuneracao, nome)


► Projeto (#codigo, nome)
► Trabalha (#&idFuncionario, #&codigoProjeto, cargaHoraria)
• Em um relacionamento N:N, cria-se uma nova relação e inclui como chave e
strangeira, as chaves primarias das relações em que ocorre o relacionament
o.
• A chave primaria dessa nova relação (no caso Trabalha) será uma chave co
mposta. Carrega também os atributos do relacionamento.
Relacionamentos binários N:N
► Funcionario (#id, remuneracao, nome)
► Projeto (#codigo, nome)
► Trabalha (#&idFuncionario, #&codigoProjeto, cargaHoraria)

funcionario projeto
#id remuneracao nome #codigo nomeprojeto
123456789 749,00 Paulo Moreira 1 projetoescola
111111111 1.245,00 Mara Beatriz 2 projetofinancas
222222222 899,00 Antonia Pereira

trabalha
#&idfuncionario #&codigoproj cargahorario
123456789 1 8
111111111 2 12
222222222 1 20
Relacionamento n-ário

► Fornecedor #codigo, nome)


► Produto (#codigo, nome)
► Projeto (#codigo, nome)
► Fornecimento (#&codigoFornecedor, #&codigoProduto, #&codigoprojeto, dat
a, quantidade)
Relacionamento n-ário
► Fornecedor (#codigo, nome)
► Produto (#codigo, nome)
► Projeto (#codigo, nome)
► Fornecimento (#&codigoFornecedor, #&codigoProduto, #&codigoprojeto, data, quantidade)
fornecedor produto projeto
#codigo nomeforn #codigo nomeproduto #codigo nomeprojeto
1 fornecedor A 111 lapis 1 projetoescola
121 caderno 2 projetofinancas
2 fornecedor B
122 borracha
fornecimento

#&codigoforn #&codigoprod #&codigoproj data quantidade

1 111 1 10/10/2021 2
2 121 2 08/09/2020 56
2 122 2 03/03/2021 57
1 111 2 25/10/2021 20
Auto-relacionamento
► Pessoa (#cpf, nome, idade, &idConjuge)
Auto-relacionamento
► Pessoa (#cpf, nome, idade, &idConjuge)

pessoa
#cpf nome idade &idconjuge

123456789 Paulo Moreira 40 111111111

111111111 Mara Beatriz 50 123456789

222222222 Antonia Pereira 35 987654321

987654321 Marco Polo 22 222222222


Generalização / especialização

► Atendente (#id, nome, idioma)


► Tecnico (#id, nome, curso)
► Analista (#id, nome, tipo)
Generalização / especialização
► Atendente (#id, nome, idioma)
► Tecnico (#id, nome, curso)
► Analista (#id, nome, tipo)
atendente
analista
#id nome idioma #id nome tipo
123456789 Paulo Moreira ingles 987654321 Marco Polo senior
111111111 Mara Beatriz ingles,espanho

tecnico
#id nome curso
222222222 Antonia Pereira eletronica
Exercícios
• Transforme o modelo ER para o lógico (relacional)

Você também pode gostar