You are on page 1of 32

BANCO DE DADOS

- PROJETO LGICO
Prof. Angel o Augusto Frozza, M.Sc.
frozza@i fc-cambori u.edu.br
PROJETO DE BANCO DE DADOS
Atividade de modelagem de dados em diversos
nveis de abstrao
Modelagem conceitual (projeto conceitual)
abstrao de mais alto nvel
objetivo: representao dos requisitos de dados do domnio
independente de modelo de BD
Modelagem lgica (projeto lgico)
representao da modelagem conceitual em um modelo de
BD
nfase na eficincia de armazenamento
evitar: muitas tabelas (e junes); tabelas subutilizadas, ...
Modelagem fsica (implementao)
esquema SQL para a modelagem lgica
dependente de SGBD
nfase na eficincia de acesso
implementao de consultas, ndices, ...
PROJETO CONCEITUAL
Vantagens
i ndependente de detal hes de i mpl ementao em um
SGBD
facilita a compreenso da semntica dos dados de um
domnio
melhor compreendido por usurios leigos
pode ser mapeado para qual quer model o l gi co de
BD
faci l i ta a manuteno do model o l gi co e a
mi grao para outro model o l gi co
processo de engenharia reversa
PROJETO LGICO DE BD
Mapeamento ER -> Relacional
Para 1 esquema ER -> N esquemas relacionais
Existem vrias maneiras de se implementar uma
modelagem conceitual abstrata
PROJETO LGICO DE BD
Compromisso entre:
evi tar um grande nmero de tabel as
evitar um tempo longo de resposta nas consultas e
atualizaes de dados
implica minimizar junes entre tabelas
evi tar atri butos opci onai s
evitar tabelas subutilizadas
implica evitar desperdcio de espao
evi tar mui tos control es de i ntegri dade no BD
evitar organizaes de dados em tabelas que gerem muitos
controles de integridade
implica evitar muitas dependncias entre dados
PROCESSO DE MAPEAMENTO
1. Mapeamento preliminar de entidades e seus
atributos
2. Mapeamento de especializaes
3. Mapeamento de relacionamentos e seus
atributos
MAPEAMENTO DE ENTIDADES
Empregados (RG, Nome, Idade)
Identificador da entidade forte torna-se
parte da chave primria na tabela correspondente entidade
fraca (tabelaFraca)
chave estrangeira na tabelaFraca
Itens (NroPedido, NroItem, Produto, Quantidade)
MAPEAMENTO DE ENTIDADES FRACAS
MAPEAMENTO DE ATRIBUTOS
Empregados (RG, Nome, Idade, PlanoSaude,
Rua, Numero, Cidade)
Telefone (RG, Numero)
ou
Telefone (RG, Numero)
MAPEAMENTO DE ATRIBUTOS
Empregados (RG, Nome, Idade, PlanoSaude,
Rua, Numero, Cidade,
FoneRes, FoneCom, Celular)
PROCESSO DE MAPEAMENTO
1. Mapeamento preliminar de entidades e seus
atributos
2. Mapeamento de especializaes
3. Mapeamento de relacionamentos e seus
atributos
MAPEAMENTO DE ESPECIALIZAES
Trs alternativas so geralmente adotadas:
1. tabel a ni ca para entidade genrica e suas
especializaes
2. tabelas para a enti dade genri ca e as enti dades
especi al i zadas
3. tabelas apenas para as enti dades especi al i zadas
ALTERNATIVA 1
Servidores (CPF, Nome, Tipo, Funcao, Titulacao,
Categoria)
Tipo pode assumir mais de um valor se a especializao no-
exclusiva
ALTERNATIVA 2
Servidores (CPF, Nome)
Funcionrios (CPF, Funcao)
Professores (CPF, Titulacao, Categoria)
ALTERNATIVA 3
Funcionrios (CPF, Nome, Funcao)
Professores (CPF, Nome, Titulacao, Categoria)
OBS.: No se aplica a especializaes parciais
PROCESSO DE MAPEAMENTO
1. Mapeamento preliminar de entidades e seus
atributos
2. Mapeamento de especializaes
3. Mapeamento de relacionamentos e seus
atributos
MAPEAMENTO DE RELACIONAMENTOS
Recomendaes de mapeamento baseiam-se
na anlise da cardinalidade dos
relacionamentos
com base nesta anlise, algumas alternativas de
mapeamento podem ser adotadas:
1. enti dades rel aci onadas podem ser fundi das em uma
nica tabela
2. tabel as podem ser criadas para o relacionamento
3. chaves estrangei ras podem ser criadas em tabelas a fim
de representar adequadamente o relacionamento
Obrigatrio em ambos os sentidos
Conferncias (Sigla, Nome, DataInstCom, NroCom,
EnderecoCom, eMailCom)
RELACIONAMENTO 1-1
Opcional em um dos sentidos
Pessoas (Codigo, Nome, NumeroCarteiraMotorista,
DataExpedicao, Validade, Categoria,
DataRetirada)
RELACIONAMENTO 1-1
Opcional em um dos sentidos
Pessoas (Codigo, Nome)
CarteirasMotorista (Numero, DataExpedicao, Validade,
Categoria, Codigo, DataRetirada)
RELACIONAMENTO 1-1
Opcional em ambos os sentidos
Homens (RG, Nome)
Mulheres (RG, Nome)
Casamento (RGh, RGm, Data)
RELACIONAMENTO 1-1
Opcional em ambos os sentidos
Homens (RG, Nome, [RGesposa])
Mulheres (RG, Nome, RGmarido, DataCasamento)
RELACIONAMENTO 1-1
Obrigatrio/opcional no lado N
Departamentos (Codigo, Nome)
Empregados (CPF, Nome, CodDepto, DataLotacao)
RELACIONAMENTO 1-N
Opcional no lado 1
Pessoas (RG, Nome)
Automveis (Chassi, Modelo, Ano)
Posse (RG, Chassi, DataCompra)
RELACIONAMENTO 1-N
Opcional no lado 1
Pessoas (RG, Nome)
Automveis (Chassi, Modelo, Ano, RG, DataCompra)
RELACIONAMENTO 1-N
Obrigatrio/opcional em ambos os sentidos
Empregados (RG, Nome)
Projetos (Codigo, Nome)
Participao (RG, Codigo, DataInicio)
RELACIONAMENTO N-M
Valem as mesmas recomendaes anteriores
Alternativas:
1. Empregados (RG, Nome, Idade)
Gerncia (RGe, RGg)
2. Empregados (RG, Nome, Idade, RGg)
AUTO-RELACIONAMENTO
Valem as mesmas recomendaes anteriores
questo: localizara entidade associativa
Livros (Cdigo, ..., RGcli, DataDevoluo, RGBibl)
Clientes (RGcli, ...)
Bibliotecrias (RGbibl, ...)
RELACIONAMENTOS COM ENTIDADES ASSOCIATIVAS
1
Outro exemplo
Correntista (RG, Numero)
CartoesMagneticos (Numero, DataExp, RG, NroConta)
RELACIONAMENTOS COM ENTIDADES ASSOCIATIVAS
Instituicoes (Sigla, ...)
Projetos (Numero, ...)
Pesquisadores (RG, ...)
Pesquisa (Sigla, Numero, RG, DataInicio)
RELACIONAMENTOS TERNRIOS
RELACIONAMENTOS TERNRIOS
Produtos (Codigo, ...)
Cidades (Codigo, ...)
Distribuidores (RG, ...)
Distribuicao (CodProduto, CodCidade, RG)
Bairros (Cdigo, ...)
Carteiros (RG, ...)
Correspondncias (CodCarta, Peso, CodBairro, RG, ...)
RELACIONAMENTOS TERNRIOS

You might also like