15

Click here to load reader

Banco de Dados Mapeamento MER MREL Prof. MSc Wagner Siqueira Cavalcante

Embed Size (px)

Citation preview

Page 1: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Banco de DadosMapeamento MER MREL

Prof. MSc Wagner Siqueira Cavalcante

Page 2: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

Mapeamento das Entidades: Todo retângulo (entidade forte ou fraca), em via de regra, torna-se

uma tabela, com os seus atributos próprios. Cada atributo transforma-se em um campo da tabela. Cada tupla (linha da tabela) corresponde a um registro de uma

entidade em seu conjunto. Cada chave (primária e estrangeira) gera “estruturas de acesso”.

Entidade Fraca:Adiciona-se a chave primária da entidade dominante às suas

colunas.

BD – MER para MRel

Page 3: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)Mapeamento das Entidades: Em situações específicas, determinados relacionamentos serão

representados por tabelas também. Cada tabela deve ter, nos títulos das colunas, os atributos simples

da entidade. Os atributos compostos, no entanto, podem (ou devem) ser

expandidos (ou divididos) em colunas distintas (no caso de marca, p.ex., não é necessário expandi-la em dia, mês e ano, porém, sendo necessário, faça-o; no caso de endereço, p.ex., normalmente é necessário expandir-se).

Os atributos que representam a chave primária devem ser destacados (grifados com linha contínua).

Os atributos multivalorados serão "convertidos" em entidades fracas, dependentes da entidade pai (ou mãe, dominante).

No DER, os atributos não podem ser exportados (para outra entidade) em hipótese alguma. No Modelo Relacional, entretanto, algumas tabelas podem receber os atributos (chave primária) das entidades, com as quais se relacionam, como chave estrangeira, respeitando as regras adequadas (1:1, 1:N, p.ex.).

BD – MER para MRel

Page 4: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

Mapeamento dos Relacionamentos: Navegação incorporada: Trabalha com chave estrangeira. Navegação disjunta: Não modifica as definições dos

registros.Adicionam-se registros para a

navegação.1:N A entidade N carrega o identificador da entidade 1 (estrangeira) e os atributos do relacionamento (normalmente não há no 1:1 e 1:N).

1:1 A tabela que se sobrecarregar no uso, carrega o identificador da outra.No caso de auto-relacionamento, deve-se gerar uma estrutura de acesso.

M:N O relacionamento torna-se uma tabela (os atributos são as chaves estrangeiras, advindas das tabelas envolvidas)

BD – MER para MRel

Page 5: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

Um atributo multivalorado é, por essência, um atributo, e não uma entidade, porém permite vários conteúdos possíveis, simultaneamente.

Sua representação, no entanto, será feita em forma de entidade fraca, dependente de sua entidade original (que será sua dominante).

Como a entidade fraca não tem uma chave primária própria, contará com um atributo (identificador) que consiga identificá-lo entre aqueles relacionados com a entidade dominante (como 1º, 2º, nº. daquela entidade), contudo, podendo se repetir no conjunto de todas as entidades deste conjunto de entidades fracas.

A chave primária da entidade fraca é composta pela chave primária da entidade dominante e este atributo identificador da entidade fraca.

BD – MER para MRel

1. Atributo multivalorado:

Page 6: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

BD – MER para MRel

Cliente

Id_clinome

Outros...

telefones

Comunica-se por

Telefone ddd

seqüência

número

Um cliente pode possuir mais que um número de telefone.1. Atributo multivalorado:

Tabela Cliente

IdCli Nome Outros...

Tabela Telefones

Id_Cli seqüência ddd

número

Page 7: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

BD – MER para MRel

Empréstimo

Nr-Empréstimomarca

valor

parcelas

possui

Parcela vencimento

nrdaparcela

valor

Um carnê será emitido para o pagamento parcelado de um empréstimo financeiro.

1. Atributo multivalorado:

Tabela ParcelaNrEmp

rnrdaparce

laven

cvalo

r

Tabela EmpréstimoNrEmp

r marca Outros...

Page 8: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

Criar tabelas para as entidades, podendo adicionar a uma delas a chave estrangeira (advinda da outra; quando há prioridade de uma sobre a outra, a tabela com maior acesso recebe a chave da de menor fluxo).

Deve-se ter o cuidado para não provocar um “dead-lock” (uma entidade esperando que a outra tenha valor primeiramente e vice-versa), com ambas chaves primárias de cada entidade como estrangeiras na outra, simultaneamente.

BD – MER para MRel

2. Relacionamentos um-para-um (1:1):

Page 9: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

BD – MER para MRel

Motorista

CNHnome

dirige

Automóvel marca

renavam

modelo

Um motorista de táxi tem acesso para dirigir unicamente um automóvel da Cooperativa, a qual permite apenas um condutor responsável por este carro.

2. Relacionamentos um-para-um (1:1):

Tabela Motorista

CNH nome Outros...

Tabela AutomóvelCNH

(FK)renava

mmarc

amodel

o

Aqui, quando o carro puder ser substituído por outro...

Page 10: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

BD – MER para MRel

Motorista

CNHnome

dirige1

1

Automóvel marca

renavam

modelo

Um motorista de táxi tem acesso para dirigir unicamente um automóvel da Cooperativa, a qual permite apenas um condutor responsável por este carro.

2. Relacionamentos um-para-um (1:1):

Tabela Motorista

CNH Renavam (FK) nome Outros..

.

Tabela Automóvelrenava

mmarc

amodel

o

Aqui, quando o motorista puder ser substituído por outro...

Page 11: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Diagrama Entidade-RelacionamentoVenda de automóveis

compraCliente

RGnome

endereçocidade

UF

marcamodelo

anocor

valor

Chassis

Carro

IDCli

BD – MER para MRel

3. Relacionamentos um-para-muitos (1:N): Criar tabela para a entidade de cardinalidade "1", com somente os

seus atributos e, para a de cardinalidade "N", idem, adicionando-se os atributos da chave primária de "1", como chave estrangeira (foreign key).

Uma concessionária de automóveis, permite que cada cliente possa adquirir um ou mais carros simultaneamente. Cada automóvel, entretanto, vende-se a somente uma pessoa.

1 N

Page 12: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL)

Tabela Cliente

IdCli RGNome Endereç

oCidad

eU

F

Tabela AluguelChassi

smarc

amodelo

ano cor Valor

compra1 N

marcamodelo

anocor

valor

Chassis

Carro

Tabela AluguelIdCli (fk)

Chassis

marca

modelo

ano cor Valor

PK do lado 1 vai como FK para o lado N

Cliente

RGnome

endereçocidade

UF

IdCli

BD – MER para MRel

Cliente = {IdCli, Rg, Nome, Endereco, Cidade, UF}

Aluguel = {Chassis, IdCli (FK), marca, modelo, ano, cor, valor}

IdCli refere-se ao cliente, IdCli é não único.

PKFK

Page 13: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Tabela ClienteIdCli RG Nome Endereço Cidade UF

010101 1234 Otto Bits Rua do Byte, 11111111 Silício SP111111 2345 Biugueitis Clinto da Silva Rua das Minas, 13 Xiririca da Serra SP222222 3456 Winchester Baleado Deevez Av do Sufoco, 250-GB Três Corações RJ232323 4567 Giga Baiti Rua dos Capazes, 1 Oktoberfest SC333333 5678 Margarida Noriana Kremoza Ladeira do Escorrega, 55 Vegetalis PR555555 6789 Nano Secondo Rua do Tempo, 10-6 Jamais Cano SP666666 7890 Napoleon Locco di Petra Av dos Pinéus, s/nº Barbacena MG777777 8901 Buchi Sokegueha Memo Praça Iraque, 1109 Manrrata WA888888 9012 Ruindous Sopane Av Linus Gueitis, 98 Pinéus MG999999 0123 Vizziadju Engueimis Rua Lara Kroft, 3000 Sim City FL

Tabela CarroChassis IdCli Marca Modelo Ano Cor Valor1111 232323 GM Corsa 1.6 1995 Purpurina pura 15.000,001212 999999 Ford Fiesta 1997 Laranja brilhante 17.000,002222 555555 Fiat Uno Mille 1998 Marrom glacê 18.000,003333 222222 Ford Ka 1997 Rosa choque 19.000,004444 888888 VW Parati 1995 Verde limão 15.000,005555 666666 GM Corsa Sedan 1996 Branco omo ace 16.000,006666 333333 Ford Mondeo 1998 Verde e rosa 18.000,007777 111111 VW Gol 1999 Verde limão 19.000,008888 333333 Fiat Palio 1999 Roxo batata 19.000,009999 555555 Romi Isetta 2002 Azul marinho 22.000,00

BD – MER para MRel

Page 14: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Diagrama Entidade-RelacionamentoControle bancário

possuiCliente

RGnome

endereçocidade

UF

tipoabertlimitesei lá

mais...

nrconta

Conta

IDCli

BD – MER para MRel

3. Relacionamentos muitos-para-muitos (M:N): O relacionamento também é modelado em tabela (com as

chaves das entidades envolvidas, lógico), além das entidades. Uma instituição bancária permite que cada cliente possa

controlar uma ou várias contas-correntes, compartilhadas por outro ou mais clientes (e/ou).

Page 15: Banco de Dados Mapeamento MER  MREL Prof. MSc Wagner Siqueira Cavalcante

Modelagem de MER para Relacional (MER MREL) Venda de automóveis

Tabela Cliente

IdCli RGNome Endereç

oCidad

eU

F

Tabela Contanrcont

atipo

abert limite

sei lá

mais...

Tabela possui

possui

tipoabertlimitesei lá

mais...

nrconta

ContaCliente

RGnome

endereçocidade

UF

IdCli

Tabela possuiIdCli nrcont

a

BD – MER para MRel

Cliente = {IdCli, Rg, Nome, Endereco, Cidade, UF}

Conta = {NrConta, tipo, abert, limite, sei lá, ...}Possui = {IdCli, NrConta}

IdCli refere-se ao Cliente, não único;

NrConta refere-se à Conta, não única.