1 / 30

Projeto Lógico

Projeto Lógico. Transformação ER para o Modelo Relacional (nível lógico) Baseado em Regras São aplicáveis a maioria dos casos 1 esquema ER pode gerar N esquemas Relacionais Há várias maneiras de implementar (nível lógico) uma representação abstrata (DER). Projeto Lógico.

vinson
Télécharger la présentation

Projeto Lógico

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. Projeto Lógico • Transformação ER para o Modelo Relacional (nível lógico) • Baseado em Regras • São aplicáveis a maioria dos casos • 1 esquema ER pode gerar N esquemas Relacionais • Há várias maneiras de implementar (nível lógico) uma representação abstrata (DER)

  2. Projeto Lógico • O mapeamento deve levar em conta: • A performance do BD • Evitar junções • Diminuir o Número de Chaves • Evitar criação de índices em excesso • Evitar Campos Opcionais • Simplificar o desenvolvimento das aplicações

  3. Projeto Lógico Passos para transformação ER → Relacional: • Tradução inicial de Entidades e seus Atributos • Tradução de Generalizações/Especializações • Tradução de Relacionamentos e seus Atributos

  4. Mapeamento de Entidades e Atributos • Regra Inicial: • Cada entidade é traduzida para uma tabela • Cada atributo da entidade gera uma coluna na tabela • Atributos identificadores das entidades serão as chaves primárias da tabela

  5. Mapeamento de Entidades e Atributos ISBN Livros Titulo Edicao Livros (ISBN, Titulo, Edicao)

  6. Mapeamento de Entidades Fracas • Identificador da entidade forte torna-se: • Parte da chave primária da Tabela Fraca • Chave estrangeira na Tabela Fraca Nome (1,1) (0,N) Dependentes Filiação Sócios NroSequencia Codigo Dependentes (Codigo, NroSequencia, Nome)

  7. Mapeamento de Atributos CNH (0,1) Nome RG Clientes Endereço Email (1,N) Rua Bairro CEP Clientes (RG, Nome, CNH, Rua,Bairro,CEP) Email(RG, email) ou Email (RG, email)

  8. Mapeamento de Especializações • Três alternativas: • Tabela única para toda hierarquia • Tabelas para entidade genérica e entidades especializadas • Tabelas somente para as entidades especializadas

  9. Mapeamento de Especializações 1) Tabela única para toda hierarquia Endereço RG Nome Pessoas CNPJ CPF Jurídica Física Pessoas (RG, Nome, Endereco,Tipo, CPF, CNPJ)

  10. Mapeamento deEspecializações 2) Tabelas para entidade genérica e entidades especializadas Endereço RG Nome Pessoas CPF CNPJ Jurídica Física Pessoas (RG, Nome, Endereço) Física (RG, CPF) Jurídica (RG, CNPJ)

  11. Mapeamento de Especializações 3) Tabelas somente para as entidades especializadas * Não se aplica a especializações parciais Endereço RG Nome Pessoas CPF CNPJ Jurídica Física Física (RG, Nome, Endereço, CPF) Jurídica (RG, Nome, Endereço,CNPJ)

  12. Mapeamento de Relacionamentos • Alternativas de Mapeamento de Relacionamentos: • Entidades relacionadas podem ser fundidas em uma única tabela • Criar tabela para o Relacionamento • Adição de colunas a uma das tabelas para representar o relacionamento (chave estrangeira) • Alternativa depende da cardinalidade mínima e máxima do relacionamento

  13. Relacionamento 1:1 • Relacionamento obrigatório em ambos sentidos • Alternativa: Fusão das Entidades Nome Código Nome Número (1,1) (1,1) Eventos organização Comissões DataInstalacao Eventos (Código, Nome, DataInstCom, NroCom, NomeCom)

  14. Relacionamento 1:1 • Relacionamento opcional em um dos sentidos • Alternativa1: Fusão das Entidades Nome Código Nome Código (0,1) (1,1) controle Bibliotecárias Áreas Periodicidade Bibliotecárias (Código, Nome, CodigoArea, NomeArea, Periodicidade)

  15. Relacionamento 1:1 • Relacionamento opcional em um dos sentidos • Alternativa2: Chave Estrangeira em uma das tabelas Nome Código Nome Código (0,1) (1,1) controle Bibliotecárias Áreas Periodicidade Bibliotecárias (Código, Nome) Áreas (Código, Nome, CodBiblio, Periodicidade)

  16. Relacionamento 1:1 • Relacionamento opcional em ambos os sentidos • Alternativa1: Criar tabela para o relacionamento Nome RG Nome RG (0,1) (0,1) casamento Homens Mulheres Regime Homens (RG, Nome) Mulheres (RG, Nome) Casamento (RGH, RGM, Regime)

  17. Relacionamento 1:1 • Relacionamento opcional em ambos os sentidos • Alternativa2: Chaves estrangeiras em uma das tabelas Nome RG Nome RG (0,1) (0,1) casamento Homens Mulheres Regime Homens (RG, Nome, [RGM]) Mulheres (RG, Nome, RGH, Regime)

  18. Relacionamento 1:N • Relacionamento obrigatório ou opcional no lado N Código ISBN (1,1) (0,N) Editoras Livros publicacao Nome Título Data Editoras (Código, Nome) Livros (ISBN, Título, CodEditora, DataPublicacao)

  19. Relacionamento 1:N • Relacionamento opcional no lado 1 • Alternativa1: Criar tabela para relacionamento com chave primária da tabela do lado N Número ISBN (0,1) (0,N) Estante localização Livros Capacidade Título NumeroControle Estantes (Número, Capacidade) Livros (ISBN, Título) Localização (Número, ISBN, NumeroControle)

  20. Relacionamento 1:N • Relacionamento opcional no lado 1 • Alternativa2: Chave estrangeira na tabela do lado N Número ISBN (0,1) (0,N) Estante localização Livros Capacidade Título NumeroControle Estantes (Número, Capacidade) Livros (ISBN, Título, Número, NumeroControle)

  21. Relacionamento N:N • Relacionamento obrigatório ou opcional em ambos os sentidos ISBN Numero (0,N) (0,N) Livros Pedidos ItemPedido OrdemCompra Titulo Quantidade Livros (ISBN, Titulo) Pedidos (Número, OrdemCompra) ItemPedido (ISBN, Numero, Quantidade)

  22. Auto-Relacionamento • Aplicar as mesmas regras para relacionamentos Nome Código Bibliotecárias (1,1) (0,N) Supervisionada Supervisora supervisão Bibliotecárias(Código, Nome) Supervisão(CodSupervisionada, CodSupervisora) ou Bibliotecárias(Código, Nome, CodSupervisora)

  23. Relacionamentos com Entidades Associativas • Alternativa1: Empréstimos (0,N) (0,1) Clientes Livros empréstimo DataDevolução (0,N) (1,1) cadastro Bibliotecárias Livros (Código, ..., RGCliente, DataDevolução, RGBiblio) Clientes (RGCliente, ...) Bibliotecárias(RGBiblio, ...)

  24. Relacionamentos com Entidades Associativas • Alternativa 2: (1,N) (1,N) Clientes Contas vínculo Número RG Correntistas (1,1) Número CartõesMagnéticos Concessão DataExp (0,1) Correntista(RG, Número) CartõesMagnéticos(Número, DataExp, RG, NroConta)

  25. Relacionamentos Ternários • Caso N:N:N Sigla Número Instituições Projetos (0,N) (1,N) Pesquisa DataInício (1,N) RG Pesquisadores Instituições (Sigla, ...) Projetos (Número, ...) Pesquisadores (RG, ...) Pesquisa (Sigla, Número, RG, DataInício)

  26. Relacionamentos Ternários • Caso 1:N:N Código Código Produtos Cidades (0,N) (0,N) Distribuição (0,1) RG Distribuidores Produtos (Código, ...) Cidades (Código, ...) Distribuidores (RG, ...) Distribuição (CodProduto, CodCidade, RG)

  27. Relacionamentos Ternários • Caso 1:1:N Código Código Correspondências Bairros Peso (0,N) (1,1) Entrega (1,1) RG Carteiros Bairros (Código, ...) Carteiros (RG, ...) Correspondências (CodCarta, Peso, CodBairro, RG, ...)

  28. Relacionamentos Ternários • Caso 1:1:1 Código Código Painéis Motores (1,1) Fabricante Peso (1,1) Veículo (1,1) Código Latarias Modelo Veículo (Código, PesoPainel, CodMotor, FabrMotor, CodLataria, ModLataria)

  29. Dicionário de Dados

  30. Mapear o DER para Relacional:

More Related