1 / 29

SCC0141 - Bancos de Dados e Suas Aplicações

SCC0141 - Bancos de Dados e Suas Aplicações. Prof. Jose Fernando Rodrigues Junior Material original: Elaine Parros Machado de Sousa Mapeamento entre Esquemas Parte 1. Mapeamento entre Esquemas – Mapeamento MER  MRel. MER - modelo conceitual

maille
Download Presentation

SCC0141 - Bancos de Dados e Suas Aplicações

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SCC0141 - Bancos de Dados e Suas Aplicações Prof. Jose Fernando Rodrigues Junior Material original: Elaine Parros Machado de Sousa Mapeamento entre Esquemas Parte 1

  2. Mapeamento entre Esquemas –Mapeamento MER  MRel • MER - modelo conceitual • usado para especificar conceitualmente a estrutura dos dados de uma aplicação • Projeto Conceitual – descrição carregada de semântica • Modelo Relacional - modelo de implementação • usado para suportar a implementação de aplicações • Projeto Lógico • SGBDR  SGBD que se apóia no modelo relacional

  3. Disciplina Nome No. Créditos Sigla Passo 1 • Como mapear Conjuntos de Entidades? Aluno Nome NUSP CPF RG USP – ICMC – GBDI

  4. Pessoa Nome Rua Pessoa = {Nome, NUSP, Rua, Número, CEP, Cidade} NUSP Número CEP Endereço Cidade Atributo Composto

  5. Disciplina Nome No. Créditos Corresponde Sigla Número Passo 2 • Como mapear Conjuntos de Entidades Fracas? N 1 Turma Horário Sala USP – ICMC – GBDI

  6. Sigla Número Entidades fracas Nome Horário No. Créditos Sala N 1 Disciplina Turma Corresponde 1 Tem Disciplina = {Sigla, Nome, NroCreditos} N Aula Prática Turma = {Número, Sigla, Horário, Sala} Código Horário Laboratório Aula_Prática = {Código, Horário, Laboratório, Número, Sigla}

  7. Passo 3 • Como mapear Conjuntos de Relacionamentos Binários com Cardinalidade 1:1? Comissão organiza Conferência 1 1 Cod Nome Data Instalação NroMembros USP – ICMC – GBDI

  8. Relacionamentos Binários • Cardinalidade 1:1 Comissão organiza Conferência 1 1 Cod Nome Data Instalação NroMembros Conferência = {Nome} Comissão = {Cod, NroMembros, Conferência, DtaInst}

  9. Relacionamentos Binários • Cardinalidade 1:1 Comissão organiza Conferência 1 1 Cod Nome Data Instalação NroMembros Conferência = {Nome, CodComissão, DtaInst} Comissão = {Cod, NroMembros}

  10. Relacionamentos Binários • Cardinalidade 1:1 Projeto participa Gerente 1 1 Cod (obrigatoriamente!) Nome Gerente = {Nome, Projeto}  Restrição de null: na relação Gerente o atributo Projeto deve ser definido como não nulo. Projeto = {Cod}

  11. Comissão organiza Conferência 1 1 Cod Nome Data Instalação NroMembros • Alternativa - uma só relação: ConfCom = {Nome, CodComissão, NroMembros, DataInstalação} Alternativas para o MapeamentoRelacionamentos Binários 1:1 • Mapeamento usual: • Conferência = {Nome, CodComissão, DataInstalação} • Comissão = {Cod, NroMembros}

  12. Pouca Participação Alternativas para o MapeamentoRelacionamentos Binários 1:1 Considerações: o CR Namora representa relacionamentos de namoro na USP São Carlos! 1 Namora Mulher Homem 1 Nome Nome tempo Idade Idade Muitos valores nulos!! • Mapeamento usual • Mulher = {Nome, Idade} • Homem = {Nome, Idade, NomeM, tempo}

  13. Alternativas para o MapeamentoRelacionamentos Binários 1:1 • Mapeamento alternativo • Mulher = {Nome, Idade} • Homem = {Nome, Idade} • Namoro = {NomeH, NomeM, tempo} Desvantagem????

  14. Alternativas para o MapeamentoRelacionamentos Binários 1:1 • Mapeamento alternativo • Mulher = {Nome, Idade} • Homem = {Nome, Idade} • Namoro = {NomeH, NomeM, tempo} Desvantagem???? Mais relações e mais junções

  15. Papéis dos Relacionamentos Anterior 1 Diretor Sucede 1 Sucessor Nome Diretor = {Nome, NomeAntecessor}

  16. Passo 4 • Como mapear Conjuntos de Relacionamentos Binários com Cardinalidade 1:N? Disciplina Professor Ministra N 1 Sigla Nome Nome Horário No. Créditos USP – ICMC – GBDI

  17. Relacionamentos Binários • Cardinalidade 1:N Disciplina Professor Ministra N 1 Sigla Nome Nome Horário No. Créditos Professor = {Nome} Disciplina = {Sigla, Nome, Créditos, Professor, Horário}

  18. Alternativas para o MapeamentoRelacionamentos Binários 1:N Pouca Participação Considerações: poucos alunos monitoram alguma disciplina Monitora Aluno Disciplina 1 N Horário Sigla NUSP Muitos valores nulos!! NCreditos Nome • Mapeamento usual: • Disciplina = {Sigla, NCréditos} • Aluno = {NUSP, Nome, Sigla, Horário}

  19. Alternativas para o MapeamentoRelacionamentos Binários 1:N • Mapeamento alternativo: • Disciplina = {Sigla, NCréditos} • Aluno = {NUSP, Nome} • Monitora = {NUSP, Sigla, Horário} Obs: definir restrição de null para o atributo Sigla (em Monitora), para que ele não possa ter valor nulo

  20. Passo 5 • Como mapear Conjuntos de Relacionamentos Binários com Cardinalidade M:N? Disciplina Aluno Matriculado N M Sigla NUSP Nome Nota Nome No. Créditos USP – ICMC – GBDI

  21. Matriculado = {NUSP, Sigla, Nota} Relacionamentos Binários – • Cardinalidade M:N Disciplina Aluno Matriculado N M Sigla NUSP Nome Nota Nome No. Créditos Aluno = {NUSP, Nome} Disciplina = {Sigla, Nome, Créditos}

  22. Passo 6 • Como mapear Conjuntos de Relacionamentos com grau > 2? Fornecedor Projeto Fornece N P CodF CodP Qtde M Nome Início Peça Nome USP – ICMC – GBDI

  23. Relacionamentos Ternários Fornecedor Projeto Fornece N P CodF CodP Qtde M Nome Início Peça Projeto = {CodP, Início} Nome Fornecedor = {CodF, Nome} Peça = {Nome} Fornece= {CodP, Nome, CodF, Qtde}

  24. Disciplina Aluno Monitora N 1 Sigla NUSP Horário M Nome Nome No. Créditos Professor Nome Monitora= {NUSP, NomeProf, Sigla, Horário} Relacionamentos Ternários Aluno = {NUSP, Nome} Disciplina = {Sigla, Nome, No.Créditos} Professor = {Nome}

  25. Passo 7 • Como mapear atributos multivalorados? Aluno NUSP Nro.Ser.Med. Alergias Nomes dos Pais USP – ICMC – GBDI

  26. Aluno Nome N.Ser.Med. Alergias Aluno = {Nome, NSerMed} Alergias = {Nome, Alergia} Atributos Multivalorados • 1a Opção de Mapeamento

  27. Atributos Multivalorados • 2a Opção de Mapeamento Aluno valores possíveis: nome do pai nome da mãe NUSP Nome Nomes Pais Aluno = {NUSP, Nome, Pai, Mae}

  28. Mapeamento entre Esquemas –Os 7 Passos do Procedimento Mapear todos os CE Mapear todos os CE Fracas Mapear todos os CR de cardinalidade 1:1 Mapear todos os CR de cardinalidade 1:N Mapear todos os CR de cardinalidade N:N Mapear todos os CR de grau maior ou igual a 3 Mapear todos os atributos multivalorados USP – ICMC – GBDI

  29. Exercício – mapear para o Modelo Relacional CPF estado nome RG nome Atua 1 1 Representante Região 1 Pertence telefones endereço N N nome 1 Contato É Feito Cliente CNPJ 1 data É Feita valor N data N N Produto Pertence nota Venda cod preço qtde

More Related