Tradução de Entidade. Tradução de Relacionamentos 1:1. Tradução de Relacionamentos 1:1. Empregado. Empregado (CPF, Nome, Salário) CPF Nome Salário



Documentos relacionados
Transformações entre Modelos

Modelo Relacional. Modelo Relacional. Tabelas

CIn/UFPE Projeto Conceitual de BD - Prof. Robson Fidalgo 1

PROJETO LÓGICO. Passos para transformação ER Relacional: 1) Tradução inicial de Entidades e seus Atributos;

Funcionários. Funcionários. PrimeiroNome NomesDoMeio ÚltimoNome. CPF Nome Salário. CPF PrimeiroNome NomesDoMeio ÚltimoNome Salário

Níveis de Abstração. Mundo Real. Transformações entre modelos. Analista. Mini-mundo. Banco de Dados I. Unidade I. Modelo de Banco de Dados.

Modelo de Entidade e Relacionamento (MER) - Parte 07

O Modelo de Entidades e Relacionamentos (MER) é um modelo conceitual usado para projeto de aplicações de banco de dados.

Profa. Daniela Barreiro Claro

BANCO DE DADOS PROFESSOR MAURÍCIO - MAURICIO.MELLO@PUCPR.BR AULA 02. O Modelo Entidade-Relacionamento ( MER )

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)

Processo de Projeto Bottom-Up. esquema conceitual do BD. engenharia reversa do esquema relacional. esquema relacional integrado do BD (esquema global)


Modelo Entidade-Relacionamento

Curso Superior em Tecnologia de Análise e Desenvolvimento de Sistemas. Campus Alegrete. Banco de Dados I. Cristhiano Bossardi de Vasconcellos.

GBC043 - Sistemas de Banco de Dados Mapeamento ER, EER para o Relacional

Modelo Relacional. Modelo Relacional. Conceitos Gerais: Relação

Modelagem dos dados. entendo. Reino Real. Reino. Representação

Tecnologias e Linguagens para Banco de Dados I. Expressão do Relacionamento. Expressão do Relacionamento

Banco de Dados Transformação Modelo Conceitual para Lógico Relacional. Prof. Juliano Lucas Gonçalves

Curso Superior de Tecnologia em BD

Disciplina: Unidade III: Prof.: Período:

Modelo Relacional. Aécio Costa

Prof.: Clayton Maciel Costa

Capítulo 5 Complemento. 5.1 Laudon, Cap. 5

Banco de Dados I. Prof. Bal. Emerson Meneses Inocente

Roteiro. Modelagem de Dados: Usando o Modelo Entidade-Relacionamento. BCC321 - Banco de Dados I. Processo de Projeto de Banco de Dados.

Banco de Dados - Senado

Banco de Dados Lista de Exercícios 01

Banco de Dados Modelo Conceitual, Lógico, Físico, Entidade- Relacionamento (ER) Hélder Nunes

rafaeldiasribeiro.com.br 04/08/2012 MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, MODELAGEM DE DADOS Aula 8

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

Bases de Dados. Parte III: O Modelo Relacional

Descreve relacionamentos entre objetos de dados; conduz à modelagem de dados; atributos de cada objeto => Descrição de Objetos de Dados;

Modelo Entidade-Relacionamento DCC011. Modelo Entidade-Relacionamento. Processo de Projeto de Bancos de Dados

Projeto de Banco de Dados

Banco de Dados Capítulo 2: Modelo Relacional. Bach. em Ciência da Computação UFPB/CCT Cláudio Baptista, PhD

Núcleo de Pós Graduação Pitágoras

Aula VI -MODELO RELACIONAL

Modelagem de Dados Usando o Modelo Entidade-Relacionamento

PROJETO DE BANCO DE DADOS -PROJETO CONCEITUAL. Prof. Angelo Augusto Frozza, M.Sc.

UD 4: Sistema de Gerenciamento de Banco de Dados

Lista de exercícios 01

Simulado Banco de Dados I Bimestre 1 Capítulo 1 Projeto Lógico de Banco de Dados

I Requisitos de um modelo conceitual: - clareza (facilidade de compreensão) - exatidão (formal)

SISTEMAS DE BANCO DE DADOS. Prof. Adriano Pereira Maranhão

Unidade II ADMINISTRAÇÃO DE. Prof. Luiz Fernando de Lima Santos

O Modelo de Entidade Relacionamento (ER ou MER) Parte 1

Banco de dados. Conteúdo: Tradução entre os modelos Entidade Relacionamento e Relacional Prof. Patrícia Lucas

INF Fundamentos de Banco de Dados Exercícios sobre normalização

Microsoft Access Para conhecermos o Access, vamos construir uma BD e apresentar os conceitos necessários a cada momento

BANCO DE DADOS I AULA 3. Willamys Araújo

Prof. Alexandre Unterstell Banco de Dados I

O modelo Entidade-Relacionamento. Agenda: -Modelagem de dados utilizando O Modelo Entidade-Relacionamento

Modelagem de Dados e Conversão de Modelos. Frederico Damasceno Bortoloti freddb@ltc.ufes.br

BANCO DE DADOS. Fixação dos conteúdos Integridade Referencial Normalização Exercícios

Banco de Dados para Redes. Cassio Diego cassiodiego.com/bdr

1. Listar todos os dados da tabela Funcionários ordenados por matrícula. 2. Forneça o número total de empregados da companhia.

Técnicas e Linguagens para Banco de Dados I

BANCO DE DADOS -PROJETO LÓGICO. Prof. Angelo Augusto Frozza, M.Sc.

MODELO RELACIONAL - UFMA

CICLO DE VIDA DE UM BD

Engenharia de Software. Diagramas de Entidade- Relacionamento (E-R) Estruturação de dados

Processo de desenvolvimento de sistema de informação - DSI

Engenharia de Software

Administração de Sistemas de Informação Gerenciais

Depois de obtido o diagrama E/A há que estabelecer o esquema relacional correspondente.

O modelo de dados relacional e as restrições de um banco de dados relacional

AULA Entidade-Relacionamento

Ciclo de vida de um banco de dados relacional

Disciplina Técnicas de Modelagem

descreve relacionamentos entre objetos de dados; conduz à modelagem de dados; atributos de cada objeto => Descrição de Objetos de Dados;

A fim de gerenciar as vendas em uma loja, os seguintes requisitos devem ser atendidos pela modelagem de dados:

Banco de Dados. Modelagem de Dados com MER. Prof. Walteno Martins Parreira Jr

OBJETIVOS. Orientações para Projetos de BD; Dependências Funcionais (DFs): Definição de DF; Regras de inferência para DFs.

Fundamentos de Bancos de Dados Prova 3

LINGUAGEM DE BANCO DE DADOS PROFESSORA LUCÉLIA. Normalização

Desenho e Modelação de Esquemas de Bases de Dados

EXERCÍCIOS SQL Laboratório

Modelo Entidade-Relacionamento

Modelo Entidade - Relacionamento (ER ou MER) Parte 2

Fernando Fonseca Ana Carolina

Conceitos Básicos de Banco de Dados

Atributos. Exercício (4.1) Angélica Toffano Seidel Calazans Abordagem Entidade-Relacionamento

Projeto de BD Relacional

Modelo Relacional. 2. Modelo Relacional (Lógico)

Bases de Dados. Parte II: Os Modelos ER e EER

Projeto de BD Relacional

MODELO DE DADOS. É uma imagem gráfica de toda a base de informações necessárias para um determinado empreendimento.

Exercícios de Lógica Exercícios de Fixação 08

Computadores e Sistemas de Informação. Bases de Dados Relacionais (linguagem SQL)

Projeto de BD Relacional

Introdução à Banco de Dados

Banco de Dados Modelo Entidade-Relacionamento. Frederico D. Bortoloti

Aula II Introdução ao Modelo de Entidade-Relacionamento

SQL DDL. Frederico D. Bortoloti

MC536 Bancos de Dados: Teoria e Prática

Bancos de Dados Exercícios de Modelagem Entidade Relacionamento

Banco de Dados. Profa. Elaine J.C.Brito

Transcrição:

Mapeamento ER->Relacional Fernanda Baião UNIRIO Material parcialmente extraído a partir das notas de aula de Maria Luiza M. Campos, Arnaldo Rocha e Maria Cláudia Cavalcanti Mapeamento do ER para Relacional Metodologia 1. Eliminação dos identificadores externos; 2. Eliminação de atributos compostos e multivalorados; 3. Tradução de cada entidade em uma relação; 4. Tradução de cada relacionamento : a. relacionamentos 1:n, 1:1 podem ser modelados pela adição de atributos às relações já existentes. b. relacionamentos n:m requerem uma relação separada 5. Tradução de Generalização/Especialização Eliminação de Identificadores Externos Transformá-los em identificadores internos no modelo relacional Universidade _Universidade Cidade Universidade _Universidade Cidade Matrícula Estudante _Universidade Número_Estudante _Estudante Estudante Número_Estudante _Estudante A chave da entidade externa foi importada para ESTUDANTE

Eliminação de Atributos Compostos Pessoa Endereço Rua CEP Estado Pessoa Rua CEP Estado Eliminação do nível intermediário Pessoa Endereço Detalhes são deixados para a aplicação Eliminação de Atributos Multivalorados - Entidades Produto _Produto s_de_materiais Preço Produto + Produto Material _Produto Preço _Produto _de_material Introdução de nova entidade. Uma para cada atributo multi-valorado. Eliminação de Atributos Multivalorados - Relacionamentos Instrutor (0,m) _Instrutor Departamento Telefone Instrutor (0,m) _Instrutor Departamento Telefone Oferece Número_Max_Estudantes Trimestre Oferece Número_Max_Estudantes (1,m) Curso Número_Curso Curso + Número_Curso Oferta_de_Cursos _Instrutor Número_Curso Trimestre

Tradução de Entidade Empregado CPF Salário Empregado (CPF,, Salário) 1:1 Cliente tem Carregamento _Cliente Endereço _Cliente Agrupando numa mesma relação CLIENTE_CARREGAMENTO (_Cliente,, Endereço) Ambas as entidades têm o mesmo identificador E se as entidades tiverem diferentes identificadores? 1:1 CLIENTE (0,1) CARTÃO_DE_ POSSUI CRÉDITO LIMITE_CRÉDITO NÚMERO_CARTÃO TIPO_CARTÃO CÓDIGO_CLIENTE Agrupando em relações distintas * Uma das entidades tem participação parcial CLIENTE (CÓDIGO_CLIENTE, ) CARTÃO_DE_CRÉDITO (TIPO_CARTÃO, NÚMERO_CARTÃO, LIMITE) POSSUI (TIPO_CARTÃO, NÚMERO_CARTÃO, CÓDIGO_CLIENTE) As entidades têm identificadores diferentes (Qual seria ainda outra alternativa neste caso?)

1:1 HOMEM DATA DURAÇÃO (0,1) (0,1) CASAMENTO MULHER MLH_CPF HOM_CPF Ambas as entidades têm * participação parcial HOMEM (HOM_CPF, ) MULHER (MLH_CPF, ) CASAMENTO (HOM_CPF, MLH_CPF, DATA, DURAÇÃO) 1:n CIDADE LOCALIZAÇÃO _CIDADE POPULAÇÃO Ambas entidades têm participação total ESTADO _ESTADO GOVERNADOR POPULAÇÃO CIDADE (_CIDADE, _ESTADO, POPULAÇÃO) ESTADO (_ESTADO, GOVERNADOR, POPULAÇÃO) VENDEDOR 1:n TELEFONE PREENCHE (0,1) PEDIDO DESCONTO NÚMERO_PEDIDO DATA VENDEDOR (_VEND, TELEFONE) participação parcial ( pedidos pela internet ) PEDIDO (NÚMERO_PEDIDO, DATA) PREENCHE (NÚMERO_PEDIDO, _VEND, DESCONTO)

n:m ESTUDANTE MATRÍCULA (1,m) CURSO NÚMERO_ESTUDANTE _ESTUDANTE SEMESTRE GRAU NÚMERO_CURSO _CURSO Independe das! cardinalidades ESTUDANTE (NÚMERO_ESTUDANTE, _ESTUDANTE) CURSO (NÚMERO_CURSO, _CURSO) MATRÍCULA (NÚMERO_ESTUDANTE, NÚMERO_CURSO, SEMESTRE, GRAU) n-ários COD_PEÇA PEÇA DESCRIÇÃO COD_FORN ENDEREÇO TELEFONE FORNECEDOR PROJETO COD_PROJETO DATA_ABERT QTDE PEÇA (COD_PEÇA, DESCRIÇÃO) FORNECEDOR (COD_FORN,, ENDEREÇO, TELEFONE) PROJETO (COD_PROJETO,, DATA_ABERT) FORNECIMENTO (COD_PEÇA, COD_FORNECEDOR, COD_PROJETO, QTDE) Tradução de Auto Relacionamentos REG_EMP DATA_NASC EMPREGADO É_COORDENADO É_COORDENADOR COORDENA EMPREGADO (REG_EMP,, DATA_NASC) COORDENA (REG_SUB, REG_COORDENADOR) E se o relacionamento for 1:n?

Tradução de Hierarquias Há duas alternativas Fundir todas as entidades em uma única relação Uma tabela para cada entidade específica Fusão Chave primária fica sendo a da entidade mais genérica Incluir uma coluna tipo Passar todos os atributos das entidades especializadas para entidade genérica Fazer o mesmo para os relacionamentos Aplicar as regras já conhecidas Traduzindo Hierarquias LOTACAO EMPREGADO DEPTO Codigo CREA SECRETARIA DOMINIO SW Habilitacao MOTORISTA PERTENCE RAMO ENGENH ENGENHEIRO PARTICIPACAO PROJETO Traduzindo Hierarquias - fusão CREA Habilitacao LOTACAO DEPTO Codigo tipo EMPREGADO DOMINIO PERTENCE PARTICIPACAO SW RAMO ENGENH PROJETO

Traduzindo Hierarquias fusão EMPREGADO(codEmp,, tipo, crea, habilitacao, codramo, coddepto) DEPTO (coddepto,, desc) SW (codsw,, desc) RAMOENG(codRamo,,desc) PROJETO (codproj,, desc) DOMINIO(codSW, codemp) PARTICIPACAO (codemp, codproj) Traduzindo Hierarquias - EMPREGADO(codEmp,, tipo, coddepto) MOTORISTA(codEmp, habilitacao) ENGENHEIRO (codemp, CREA, codramo) SECRETARIA (codemp) Note que codemp é chave primária em cada relação especializada e chave estrangeira para EMPREGADO Traduzindo Hierarquias Tabela única Todos os dados em uma única tabela... Não há necessidade de navegação por outras tabelas para se obter todos os dados a respeito de um empregado Economia de espaço por um lado pois a chave primária não é duplicada, mas há desperdício por outro lado com os nulos que os campos das tabelas especificas trazem Várias tabelas Conceitos explicitos em relações próprias Redução de nulos Há uma terceira alternativa? Cada caso é um caso!

s s simples e reduzidos Ex data de nascimento ---> datanasc nao usar o da tabela a não ser em campos parte de chaves primárias Ex:codigo ----> codemp Há controvérsias... Exercício dealer 12 entidades 13 relacionamentos projetista franchise entrega mes v_max configuração modelo (1,M) côr côr competidor carro carroceria mercado preço título num motor capacidade estilo Exercício dealer projetista franchise entrega mes v_max configuração modelo (1,M) côr côr competidor carro carroceria mercado preço título num motor capacidade estilo

Exercício dealer mes franchise modelo entrega mes modelo projetista modelo (M,N) côr modelo v_max modelo modelo competidor configuração preço carro carroceria título estilo mercado mercado nummotor nummotor estilo título num motor capacidade Exercício ESQUEMA FINAL: ENTREGA ( mes, modelo ) FRANCHISE ( dealer, mes, modelo ) MODELO ( modelo, projetista ) MODELO-CÔR ( modelo, cor ) CONFIGURAÇÃO ( modelo, motor, v_max ) CARROCERIA ( modelo, estilo, mercado ) MERCADO ( mercado, competidor ) MOTOR ( motor, capacidade ) CARRO ( modelo, estilo, motor, preço ) Referências e Reflexões Mapeamento de outros modelos para Relacional? De OO para relacional? De XML para Relacional? Site que fala sobre mapeamento objeto para relacional: http://www.servicearchitecture.com/object-relationalmapping/articles/