Campus Alegrete
Banco de Dados I
Cristhiano Bossardi de Vasconcellos
Parte 8
TRANSFORMAO ENTRE MODELOS A abordagem ER voltada modelagem de dados de forma independente do SGBD considerado. adequada para construo do modelo conceitual. J a abordagem relacional modela os dados a nvel de SGBD relacional. Um modelo neste nvel de abstrao chamado de modelo lgico.
Abordagem Relacional - Modela os dados a nvel de SGBD relacional. - Um modelo neste nvel de abstrao chamado de modelo lgico. - Representao: nometabela2(chaveprimria,atributo1,atributo2) atributo2 referencia nometabela1
TRANSFORMAO ENTRE MODELOS Inicialmente, veremos o projeto lgico de BD relacional. O projeto lgico consta da transformao de um modelo ER em um modelo lgico, que implementa, a nvel de SGBD relacional, os dados representados abstratamente no modelo ER. O termo implementao significa que ocorre uma transformao de um modelo mais abstrato para um modelo que contm mais detalhes de implementao.
Exemplos
1 alternativa Cliente (CodCliente, Nome, NomeContato, Endereo, telefone) -> cria apenas um ndice por cdigo de cliente - a chave primria da tabela. 2 alternativa Cliente (CodCliente, Nome, NomeContato) ClienteEnder(CodCliente, Endereco, Telefone) CodCliente referencia Cliente -> cria, para cada tabela, um ndice por cdigo de cliente (onde, os dois ndices possuem exatamente as mesmas entradas, resultando em armazenamento e processamento dobrado).
Vnculo
Dependentes
cpfemp
nome
Entidade fraca
Modelo Relacional: Empregado (cpfemp, nome) Dependentes (CPFemp, CPFd, Nome) Um dependente identificado pelo cpf do empregado ao qual ele est vinculado e pelo cpf do prprio dependente
CodEng
Produz
Engenheiro (CodEng,Nome,DataNasc) Projetos (Codpr,Ttulo,Duracao) Atuacao (CodEng,Codproj,Funcao) CodEng referencia Engenheiro CodPr referencia Projeto
CodDep
Ou seja, Empregado (que possui cardinalidade mxima 1) recebe o CodDep e recebe tambm datalotacao que pertencia ao relacionamento.
CodDep
Esquema relacional... Uma alternativa essa: Departamento(CodDep,Nome) Empregado(CodE,Nome,contratacao, CodDep, datalotacao) CodDep referencia Departamento
CodDep
Porm se for necessrio armazenar o registro temporal das lotaes do funcionrio ficar assim: Departamento (CodDep,Nome) Empregado (CodE,Nome,contratacao) Lotacao (CodE, CodDep, DataLotacao) CodE referencia Empregado CodDep referencia Departamento
Fuso de tabelas
Rel. Binrios do tipo (1,1) , (1,1) - Ou seja, quando ambas tem participao obrigatria
Nro (1,1) Eventos CodEv Nome (1,1) Comisses Local Responsvel
Organizao
Data_inst comisso
Eventos(CodEv,Nome,Data_inst_comisso,Local, Responsvel_comisso)
Para alguns tipos de relacionamento h ainda uma segunda alternativa a ser usada: Exemplo: quando uma entidade tem participao opcional e a outra obrigatria Rel. Binrios, com Parcialidade em alguma das entidades
Posse
Ruim, Alternativa preferida (continua sendo a fuso) Ruim, se existem poucos clientes com Clientes(Codcli,Nome,Nro,Data_exped) carto
Pode ser usada a Adio de colunas Clientes (Codcli,Nome) CartesMagnticos (Nro, Codcli,Data_exped) Codcli referencia clientes
Casamento
Data Regime
Casamento
Data regime
Tabela prpria
Homens(cpfh,Nome,CRes) Mulheres(cpfm,Nome) Casamento(cpfh, cpfm,Data,Regime) cpfm referencia Mulheres Cpfh referencia Homens
CodDep
Nome
Esquema relacional para Adio em Coluna: Departamento(CodDep,Nome) Empregado(CodEmp,Nome,contratacao, CodDep, datalotacao) CodDep referencia Departamento
Podero ficar vazios!
(0,N)
Automveis
cpf
Nome
Idade
Data
Coda
modelo
(0,N)
automoveis
cpf
Nome
Idade
Data
coda
modelo
Em sntese:
Em sntese:
ndices
A regra geral em projetos fsicos para bd que para cada chave primria ou estrangeira, necessrio definir um ndice e...
Pela forma em que so implementados, ndices tendem a ocupar espao considervel em disco.
Alm disso, insero ou remoo de entradas em um ndice podem exigir diversos acessos a disco. Assim... podendo escolher entre 2 alternativas de implementao, uma na qual os dados aparecem em 1 nica tabela e outra na qual os mesmos dados aparecem em 2 ou mais tabelas com a mesma chave primria, prefira a implementao por uma nica tabela.
Referncias Esta apresentao foi adaptada a partir do material da Prof. Jiani Cardoso da Roza